Firearm ammunition availability detection system

ABSTRACT

A linear encoder may be used to accurately determine a number of cartridges within a magazine. Further, using a set of magnetic sensors within a buffer tube of a firearm, it is possible to determine whether a cartridge is loaded within a chamber of the weapon and/or whether the firearm is jammed. The determination of cartridges within the magazine in conjunction with the determination of whether a cartridge is in a chamber of a firearm can give a user an accurate ammunition count. Further, the use of the linear encoder makes it possible to accurately determine the cartridge count when different cartridges are loaded into the magazine or when the magazine degrades in quality over time. Moreover, the ability for magazines to communicate with a firearm enables a user to determine a total available ammunition to the user in a single display without individually checking each magazine.

INCORPORATION BY REFERENCE TO ANY PRIORITY APPLICATIONS

This application is a continuation of U.S. application Ser. No.16/297,288, filed Mar. 8, 2019 and titled “FIREARM AMMUNITIONAVAILABILITY DETECTION SYSTEM, the disclosure of which is herebyincorporated by reference in its entirety for all purposes herein, andwhich claims the benefit of U.S. Provisional Patent Application No.62/640,451, filed Mar. 8, 2018, and titled “FIREARM AMMUNITIONAVAILABILITY DETECTION SYSTEM,” the disclosure of which is herebyincorporated by reference in its entirety for all purposes herein. Anyand all applications, if any, for which a foreign or domestic priorityclaim is identified in the Application Data Sheet of the presentapplication are hereby incorporated by reference in their entiretiesunder 37 CFR 1.57.

TECHNICAL FIELD

This disclosure relates to tracking the number of rounds available for afirearm. More specifically, this disclosure relates to determining thenumber of bullets, shells, or cartridges within a magazine, weapon, andor other container for storing ammunition for a firearm.

BACKGROUND

Many weapons and firearms use magazines to provide access to multiplecartridges without the need to reload the weapons or firearms. Differentmagazines can hold different numbers of cartridges. Further, someweapons can support different size magazines.

It is often beneficial for a user to know how much ammunition isavailable to the user. For example, when hunting or in a firefight, itis important for the user to know whether the user has sufficientammunition. This can often be determined by the user when loading amagazine as the user can count how many cartridges are placed in themagazine. However, when the user is in a situation where he or she isfiring a weapon, the user may easily lose track of the amount ofammunition fired and/or remaining.

SUMMARY

The systems, methods and devices of this disclosure each have severalinnovative aspects, no single one of which is solely responsible for theall of the desirable attributes disclosed herein. Details of one or moreimplementations of the subject matter described in this specificationare set forth in the accompanying drawings and the description below.

Certain aspects of the present disclosure relate to a magazineconfigured to hold ammunition. The magazine can include: a housingcomprising an ammunition chamber, wherein the ammunition chamber isconfigured to store one or more cartridges of a first ammunition type upto a first maximum number of cartridges of the first ammunition type; alinear encoder comprising a magnet and a plurality of magnetic sensorswithin the housing and positioned along a wall of the housing, whereinthe plurality of magnetic sensors exceeds the first maximum number ofcartridges in number, and wherein the magnet is configured to generate amagnetic field that is at least partially within the ammunition chamber;and a hardware processor configured to determine a count of an amount ofcartridges of the first ammunition type within the magazine based atleast in part on a signal generated by the linear encoder.

The magazine of the preceding paragraph can include any combination orsub-combination of the following features: where the signal generated bythe linear encoder is generated by a magnetic sensor from the pluralityof magnetic sensors in response to the magnetic field; where the signalgenerated by the linear encoder is generated based at least in part on acombination of a first signal generated by a first magnetic sensor and asecond signal generated by a second magnetic sensor from the pluralityof magnetic sensors; where the signal generated by the linear encoder isgenerated based at least in part on an interpolation of a first signalgenerated by a first magnetic sensor and a second signal generated by asecond magnetic sensor from the plurality of magnetic sensors; where theplurality of magnetic sensors are positioned in a substantially verticalaxis between a feed port of the magazine and a bottom cap of themagazine; where the magnet is disposed on a follower of the magazinesuch that the magnet moves towards a feed port of the magazine ascartridges are expelled from the magazine and moves towards a bottom capof the magazine as cartridges are inserted into the magazine; where theplurality of magnetic sensors comprise Hall effect sensors oranisotropic magnetoresistive sensors; where the hardware processor isfurther configured to determine the count by at least: receiving thesignal generated by the linear encoder; accessing an ammunition counttable; and determining the count from the ammunition count table basedat least in part on the signal; where the ammunition count table isselected from a plurality of ammunition count tables based at least inpart on a determination of whether the magazine is inserted into afirearm; where the ammunition count table is selected from a pluralityof ammunition count tables based at least in part on one or more of atype of cartridge loaded into the magazine, or a manufacturer of acartridge loaded into the magazine; where the ammunition count tablecomprises a lookup table, and wherein the count is determined from thelookup table using a value generated from the signal as an index to thelookup table; and where the ammunition count table is amagazine-specific table that is calibrated for the magazine.

Additional aspects of the present disclosure relate to a magazineconfigured to hold ammunition. The magazine can include: a housingcomprising an ammunition chamber, wherein the ammunition chamber iscapable of holding between zero and ‘N’ cartridges of a first ammunitiontype, wherein ‘N’ corresponds to a maximum capacity of the magazine forholding cartridges of the first ammunition type; a hardware processor;and a linear encoder positioned within the housing and configured toprovide an electrical signal to the hardware processor, the electricalsignal corresponding to a location of a follower within the ammunitionchamber; wherein the hardware processor is configured to: determine alocation of the follower within the ammunition chamber based at least inpart on the electrical signal; access a calibration table of themagazine; and determine a count of cartridges of the first ammunitiontype within the magazine based at least in part on the location of thefollower and the calibration table.

The magazine of the preceding paragraph can include any combination orsub-combination of the following features: where the ammunition chamberis capable of holding cartridges of a second ammunition type; where amaximum capacity of the magazine for holding cartridges of the secondammunition type differs from the maximum capacity of the magazine forholding cartridges of the first ammunition type; where a size of acartridge of the first ammunition type differs from a size of acartridge of the second ammunition type; where the hardware processor isfurther configured to determine the count of cartridges by accessing anentry in the calibration table corresponding to the location of thefollower; where the calibration table is selected from a plurality ofcalibration tables based at least in part on a determination that thecartridges within the ammunition table are of the first ammunition type;where the magazine further comprises a non-volatile memory configured tostore the calibration table; and where the linear encoder is one of: anoptical encoder, a magnetic encoder, a capacitive encoder, an inductiveencoder, a magneto resistive encoder, or a resistive encoder.

Certain aspects of the present disclosure relate to a firearm or weaponcapable of determining a quantity of ammunition registered to thefirearm or weapon. The firearm can include a hardware processorconfigured to: determine an identity of one or more magazines registeredto the firearm; communicate, using a transceiver, with each of theidentified one or more magazines to obtain an ammunition count for eachmagazine of the one or more magazines; and aggregate the ammunitioncount for each magazine of the one or more magazines to obtain a totalammunition count registered to the firearm.

The firearm of the preceding paragraph can include any combination orsub-combination of the following features: where the hardware processordetermines the identity of the one or more magazines by accessing astorage device of the firearm to obtain the identity of the one or moremagazines; where the identity of each magazine from the one or moremagazines comprises a combination of a firearm identifier of the firearmand a magazine identifier of the magazine, and wherein each magazinefrom the one or more magazines is associated with a different magazineidentifier; where the transceiver is configured to use ultra-wide bandcommunication to communicate with each of the identified one or moremagazines; where the hardware processor is further configured tocommunicate with an inserted magazine that is inserted into the firearmto obtain an inserted magazine ammunition count, wherein aggregating theammunition count for each magazine of the one or more magazines includesadding the inserted magazine ammunition count to the total ammunitioncount; where the hardware processor communicates with the insertedmagazine using an optical transceiver; where the hardware processorcommunicates with the inserted magazine using inductive,electromagnetic, or electrical communication; where the hardwareprocessor is further configured to: register an unregistered magazinewith the firearm; communicate with the unregistered magazine to obtainan ammunition count of the unregistered magazine; and modify the totalammunition count to include the ammunition count of the unregisteredmagazine; where the hardware processor is further configured to registerthe unregistered magazine by: obtaining a magazine identifier for theunregistered magazine from the unregistered magazine; providing afirearm identifier to the unregistered magazine; combining at least themagazine identifier and the firearm identifier to obtain a networkidentifier for the unregistered magazine; and storing the networkidentifier for the unregistered magazine in a storage device of thefirearm; where the hardware processor is further configured to providethe network identifier to the unregistered magazine, and wherein thefirearm identifier is provided to the unregistered magazine as part ofthe network identifier; where the hardware processor is furtherconfigured to deregister a magazine of the one or more magazinesregistered to the firearm when an attempt to communicate with themagazine is unsuccessful for a threshold period of time; where thehardware processor is further configured to update the total ammunitioncount registered to the firearm when the magazine is deregistered; andwhere the transceiver is configured to use radio frequency communicationto communicate with each of the identified one or more magazines.

Additional aspects of the present disclosure relate to a method ofdetermining a quantity of ammunition registered to a firearm. The methodmay include obtaining, by a hardware processor, an identity of one ormore magazines registered to the firearm, wherein the hardware processoraccesses a storage device of the firearm to obtain the identity of theone or more magazines; communicating, using a transceiver, with each ofthe identified one or more magazines to obtain an ammunition count foreach magazine of the one or more magazines; and aggregating, by thehardware processor, the ammunition count for each magazine of the one ormore magazines to obtain a total ammunition count registered to thefirearm.

The method of the preceding paragraph can include any combination orsub-combination of the following features: where the identity of eachmagazine from the one or more magazines comprises a combination of afirearm identifier associated with the firearm and a magazine identifierassociated with the magazine, and wherein each magazine from the one ormore magazines is associated with a different magazine identifier; wherecommunicating with each of the identified one or more magazinescomprises communicating using ultra-wide band communication; where themethod further includes obtaining a loaded magazine ammunition countcomprising a count of cartridges included in a magazine inserted into aloading port of the firearm, wherein aggregating the ammunition countfor each magazine of the one or more magazines includes adding theloaded magazine ammunition count to the total ammunition count; wherethe method further includes determining whether a cartridge is within achamber of the firearm, wherein aggregating the ammunition count foreach magazine of the one or more magazines includes adjusting the totalammunition count based on the determination of whether the cartridge inwithin the chamber of the firearm; where the method further includes:registering an unregistered magazine with the firearm; communicatingwith the unregistered magazine to obtain an ammunition count of theunregistered magazine; and modifying the total ammunition count toinclude the ammunition count of the unregistered magazine; whereregistering the unregistered magazine comprises: receiving a magazineidentifier for the unregistered magazine; providing a firearm identifierto the unregistered magazine; combining at least the magazine identifierand the firearm identifier to obtain a network identifier for theunregistered magazine; and storing the network identifier for theunregistered magazine in the storage device of the firearm; where thenetwork identifier is used to communicate with the unregistered magazineafter the unregistered magazine is registered with the firearm; whereregistering the unregistered magazine occurs in response to insertion ofthe unregistered magazine into an insertion port of the firearm; wherethe method further includes: attempting to communicate with a magazinefrom the one or more magazines registered to the firearm; failing toreceive a response from the magazine within a time period subsequent toattempting to communicate with the magazine; and responsive to failingto receive the response from the magazine, removing the identity of themagazine from the storage device; where the method further includesmodifying the total ammunition count to remove the ammunition count forthe magazine from the total ammunition count; where the method furtherincludes using encrypted communication when communicating with each ofthe identified one or more magazines; and where the method furtherincludes outputting the total ammunition count for display to a user ona scope of the firearm.

Certain aspects of the present disclosure relate to a magazine capableof updating a calibration table used to determine a quantity ofcartridges loaded in the magazine. The magazine can include: a storagedevice configured to store one or more calibration tables, wherein acalibration table of the one or more calibration tables maps linearencoder position values to cartridge counts corresponding to quantitiesof cartridges loaded in the magazine; a linear encoder configured togenerate one or more signals corresponding to the one or more linearencoder position values; and a hardware processor configured to: detecta trigger to recalibrate the magazine; access the calibration table ofthe magazine from the storage device; determine a quantity of cartridgesloaded in the magazine; receive a signal from the linear encodercorresponding to a linear encoder position value; update the calibrationtable based at least in part on the signal from the linear encoder; andstore the updated calibration table at the storage device, wherein theupdated calibration table is useable to automatically determine thequantity of cartridges loaded in the magazine without user action.

The magazine of the preceding paragraph can include any combination orsub-combination of the following features: where the hardware processoris further configured to determine the quantity of cartridges loaded inthe magazine based on a user interaction with a user interface; wherethe hardware processor is further configured to: determine a type ofcartridge loaded in the magazine; and select the calibration table froma plurality of calibration tables stored at the storage device based atleast in part on the type of cartridge; where the hardware processor isfurther configured to: determine that the magazine is loaded into afirearm; and select the calibration table from a plurality ofcalibration tables stored at the storage device based at least in parton the determination that the magazine is loaded into the firearm and/orbased at least in part on a determination that a bolt of the firearm isopen or closed, wherein values in the calibration table differ from asecond calibration table of the plurality of calibration tables, andwherein the second calibration table is selected when it is determinedthat the magazine is not loaded into the firearm; where the hardwareprocessor is further configured to: determine, for each position valuein a set of linear encoder position values in the calibration table, anadjustment factor based at least in part on the signal, the set oflinear encoder position values comprising one or more position values;and adjust each linear encoder position value of the set of linearencoder position values based on the adjustment factor for the positionvalue; where the adjustment factor varies for at least some of thelinear encoder position values of the set of linear encoder positionvalues; where the one or more linear encoder position values correspondto positions of a follower of the magazine with respect to a set ofsensors included in the magazine; where the hardware processor isfurther configured to update the calibration table by: generating a newcalibration table based at least in part on the signal value from thelinear encoder; and replacing the calibration table with the newcalibration table; where the trigger comprises one or more of a passageof time, an operation of a magazine control interface (such as, forexample, activation of a button, receipt of a command via a wired orwireless user interface, detection of a control gesture or movement ofthe magazine, or detection of other user control actions), an occurrenceof an error when determining the quantity of cartridges loaded in themagazine; a difference between a value corresponding to the signal and aposition value in the calibration table exceeding a threshold, orinteraction by a user with a user interface of the magazine; and wherethe hardware processor automatically recalibrates the magazine after atime period has elapsed, and wherein the trigger comprises the elapse ofthe time period.

Additional aspects of the present disclosure relate to a method ofrecalibrating a magazine configured to count a number of cartridgeswithin the magazine. The method may include: detecting, by a hardwareprocessor included in a magazine, a trigger to recalibrate the magazine;accessing, by the hardware processor, a calibration table of themagazine from a storage device of the magazine; determining, by thehardware processor, a count of a number of cartridges loaded in themagazine; receiving, by the hardware processor, a signal from a linearencoder within the magazine; modifying, by the hardware processor, thecalibration table based at least in part on the signal from the linearencoder; and storing, by the hardware processor, the modifiedcalibration table at the storage device, wherein the modifiedcalibration table is useable to automatically determine a quantity ofcartridges loaded in the magazine without user action.

The method of the preceding paragraph can include any combination orsub-combination of the following features: where the count of the numberof cartridges is determined based on a user input; where the count ofthe number of cartridges is obtained from the storage device of themagazine, wherein the storage device stores a pre-specified count to beused during recalibration of the magazine; where the method furtherincludes determining a type of cartridge loaded in the magazine; andselecting the calibration table based at least in part on the type ofcartridge; where the method further includes determining a manufacturerof a cartridge loaded in the magazine; and selecting the calibrationtable based at least in part on the manufacturer of the cartridge; wherethe method further includes determining whether the magazine is loadedinto a firearm; and selecting the calibration table based at least inpart on the determination of whether the magazine is loaded into thefirearm; where the method further includes determining a second count ofa second number of cartridges loaded in the magazine; and receiving asecond signal from the linear encoder within the magazine, wherein thecalibration table is modified based at least in part on the signal andthe second signal from the linear encoder; where modifying thecalibration table based at least in part on the signal from the linearencoder comprises: determining an adjustment factor for a set ofposition values in the calibration table based at least in part on thesignal, the set of position values comprising one or more positionvalues; and adjusting each position value of the set of position valuesbased on the adjustment factor for the set of position values; where theadjustment factor differs for at least some of the position values ofthe set of position values; where the set of position values correspondto positions of a magnet of the linear encoder within the magazinecorresponding to different quantities of cartridges within the magazine;where the set of position values is a subset of position values in thecalibration table; where determining the adjustment factor for the setof position values comprises determining a difference between a valuecorresponding to the signal and at least one position value from the setof position values in the calibration table; and where the triggercomprises one or more of a passage of time, a command received via amagazine control interface, an occurrence of an error when determiningthe quantity of cartridges loaded in the magazine; a difference betweena value corresponding to the signal and a position value in thecalibration table exceeding a threshold, or interaction by a user with auser interface of the magazine.

Certain aspects of the present disclosure relate to an ammunitionmagazine. The ammunition magazine may include: a hardware processorcomprising an optical transceiver interface and an ammunition sensorinterface, wherein the ammunition sensor interface is configured toreceive sensor outputs used to determine a number of cartridges in theammunition magazine, and wherein the optical transceiver interface isconfigured to transmit a digital data signal indicating a count of thenumber of cartridges in the ammunition magazine; an ammunition sensorpositioned and configured to sense the presence of cartridges loaded inthe ammunition magazine; and an optical transceiver configured toreceive the digital data signal from the hardware processor and generatean optical digital data signal configured to be transmitted through atransmission window of the ammunition magazine.

The ammunition magazine of the preceding paragraph can include anycombination or sub-combination of the following features: where theammunition sensor is part of a linear encoder included in the ammunitionmagazine; where the optical transceiver comprises: an opticaltransmitter that converts the digital data signal to the optical digitaldata signal and transmits the optical digital data signal through thetransmission window; and an optical receiver that receives a secondoptical digital data signal and converts the second optical digital datasignal to a second digital data signal that is provided to the hardwareprocessor; where the second digital data signal comprises a command toobtain the count of the number of cartridges in the ammunition magazine;where the second optical digital data signal is received from a secondtransmission window of the ammunition magazine; where the ammunitionmagazine further includes a collimating lens configured to collimate theoptical digital data signal to be transmitted through the transmissionwindow; and where the ammunition sensor comprises a linear encoder.

Additional aspects of the present disclosure relate to a firearm system.The firearm system may include a magazine configured to hold one or morecartridges; and a firearm comprising: an insertion port configured toaccept the magazine, wherein the magazine is configured to be insertedinto the insertion port and to provide the one or more cartridges to thefirearm; and a firearm optical port within a housing of the insertionport, the firearm optical port configured to align with a magazineoptical port of the magazine when the magazine is inserted into theinsertion port and to receive a signal from the magazine optical port.

The firearm system of the preceding paragraph can include anycombination or sub-combination of the following features: where thefirearm further comprises a hardware processor configured to determine acount of cartridges available in the firearm based at least in part onthe signal; where the signal is an optical signal and wherein thefirearm further comprises a convertor that converts the optical signalto an electrical signal and provides the electrical signal to thehardware processor; where the convertor comprises a transceiverconfigured to receive the signal from the magazine optical port and totransmit a second signal to the magazine via the firearm optical port;where the hardware processor is located within a handle of the firearm;where the hardware processor is further configured to determine thecount of the cartridges available in the firearm based at least in parton a determination of whether a cartridge exists in a chamber of thefirearm; where the firearm further comprises a plurality of magneticsensors within a buffer tube of the firearm and a magnet attached to abolt of the firearm; where a hardware processor of the firearmdetermines whether a cartridge is within a chamber based at least inpart on a motion and a position of the bolt as detected by the pluralityof magnetic sensors; where the firearm further comprises a batterylocated within a handle of the firearm; where the firearm furthercomprises a wireless transceiver configured to communicate with one ormore magazines using ultra-wideband communications; where the firearmfurther comprises a wireless transceiver configured to communicate overa network; where the firearm optical port comprises a transmissionwindow; where the magazine comprises an optical transceiver thatconverts a digital data signal to an optical digital data signal that istransmitted to the firearm as the signal through the magazine opticalport; and where a gap exists between the firearm optical port and themagazine optical port when the magazine is inserted into the firearm.

BRIEF DESCRIPTION OF THE DRAWINGS

Aspects and advantages of the embodiments provided herein are describedwith reference to the following detailed description in conjunction withthe accompanying drawings. Throughout the drawings, reference numbersmay be re-used to indicate correspondence between referenced elements.The drawings are provided to illustrate example embodiments describedherein and are not intended to limit the scope of the disclosure. Inaddition, various features of different disclosed embodiments can becombined to form additional embodiments, which are part of thisdisclosure. Any feature or structure can be removed or omitted.

FIG. 1 illustrates a cross-section of an embodiment of the inside of amagazine.

FIG. 2 illustrates a line drawing of the embodiment of the cross-sectionof the magazine illustrated in FIG. 1.

FIG. 3 illustrates an embodiment of the Hall effect sensors within anembodiment of the magazine.

FIG. 4A illustrates an embodiment of the alignment pin within anembodiment of the magazine.

FIG. 4B illustrates another embodiment of the Hall effect sensors withinan embodiment of the magazine without an alignment pin.

FIG. 5 illustrates an embodiment of the follower within an embodiment ofthe magazine.

FIG. 6 illustrates a line drawing of the embodiment of the followerillustrated in FIG. 5.

FIG. 7 illustrates an embodiment of the outside of a magazine.

FIG. 8A illustrates a line drawing of another perspective of the outsideof the magazine illustrated in FIG. 7.

FIG. 8B illustrates an embodiment of a magazine with a control interfacepositioned near the egress of the magazine in accordance with certainembodiments.

FIG. 8C illustrates the magazine of FIG. 8B inserted into a weapon.

FIG. 9A illustrates an embodiment of a non-contact optical connectorincluded as part of the magazine.

FIG. 9B illustrates an embodiment of a signal convertor within amagazine and a signal converter within a weapon that enables opticalcommunication between the magazine and the weapon.

FIG. 10 illustrates an embodiment of a display included as part of themagazine.

FIG. 11A illustrates an embodiment of the electronic circuit and displayincluded as part of the magazine.

FIG. 11B illustrates an alternative view of the embodiment of theelectronic circuit and display of FIG. 11A.

FIG. 12 illustrates an embodiment of a display circuit for a display.

FIG. 13 illustrates an embodiment of a weapon with the magazineinserted.

FIG. 14 illustrates a modified view of the embodiment of the weapon ofFIG. 13.

FIG. 15 illustrates a line drawing of the embodiment of the weapon ofFIG. 13 without the inserted magazine.

FIG. 16 illustrates a line drawing of the embodiment of the weapon ofFIG. 13 and an un-inserted magazine.

FIG. 17 illustrates an embodiment of the weapon handle and magazine.

FIG. 18 illustrates an embodiment of the ammunition status displayattached to a rail of the weapon.

FIG. 19 illustrates an embodiment of the ammunition status displayseparate from the weapon.

FIG. 20 illustrates a cross-section of an embodiment of the weapon withthe magazine installed.

FIG. 21 illustrates a line drawing of the cross-section of theembodiment of the weapon of FIG. 20 with the magazine installed.

FIG. 22 illustrates a line drawing of a cross-section of an embodimentof the handle and magazine inserted into the weapon.

FIG. 23 illustrates a line drawing of another perspective of thecross-section of the embodiment of the handle and magazine inserted intothe weapon of FIG. 22.

FIG. 24A illustrates an embodiment of a non-contact optical connectorincluded in the lip of the insertion point for inserting a magazine intothe weapon.

FIG. 24B illustrates a portion of the magazine with a transceiver and amagnetic sensor in accordance with certain embodiments.

FIG. 24C illustrates a portion of the weapon with a transceiver 2302 anda magnet in accordance with certain embodiments.

FIG. 25 illustrates an embodiment of a buffer tube within a weapon.

FIG. 26 illustrates a line drawing of an embodiment of a buffer tube andstock of a weapon.

FIG. 27 illustrates an example use case of certain embodiments describedherein.

FIG. 28 presents a flowchart of an embodiment of an ammunition countdetermination process.

FIG. 29 presents a flowchart of an embodiment of an ammunition countdisplay process.

FIG. 30 presents a flowchart of an embodiment of a magazine calibrationprocess.

FIG. 31 presents a flowchart of an embodiment of a calibration tablebased ammunition count process.

FIG. 32 presents a flowchart of an embodiment of a magazinerecalibration process.

FIG. 33 presents a flowchart of an embodiment of a total ammunitioncount process.

FIG. 34 presents a flowchart of an embodiment of a magazine registrationprocess.

FIG. 35 presents a flowchart of an embodiment of a weapon display statemachine.

FIG. 36 presents a flowchart of an embodiment of a jam display process.

FIG. 37 presents a flowchart of an embodiment of a chamber count displayprocess.

FIG. 38 presents a flowchart of an embodiment of a magazine displayprocess.

FIG. 39 presents a flowchart of an embodiment of a redraw process.

DETAILED DESCRIPTION

The headings provided herein, if any, are for convenience only and donot necessarily affect the scope or meaning of the claimed invention.For the purpose of the present disclosure, the terms mobile devices andwireless devices are used interchangeably.

Introduction

In a number of situations, it can be beneficial to maintain an accuratecount of available ammunition within a magazine of a weapon. Forexample, a soldier will often want to know how much ammunition isavailable to him or her. Although the soldier may be aware of the amountof ordinance assigned to the soldier, during a firefight, the soldiermay lose track of how many shots have been taken and how much ammunitionremains.

Certain embodiments described herein provide an improved ammunitiontracking system that determines the amount of ammunition within amagazine and outputs the information for display to a user. The systemincludes a magnet and a set of Hall effect sensors that determine alocation of the magnet within the magazine. Based at least in part onthe determination of the location of the magnet, the system determinesthe amount of ammunition within the magazine.

Further, in certain embodiments disclosed herein, the system can trackthe total amount of ammunition available to a user (e.g., a soldier,policeman, or hunter). The system can register one or more magazines toa user or a particular weapon. The system can then maintain a count ofammunition available to the user or the weapon based on the ammunitionwithin the one or more magazines. Advantageously, in certainembodiments, by monitoring ammunition within each magazine as well asthe number of magazines available, a user can be presented with anaccurate count of the total ammunition available to the user without theuser needing to track the amount of ammunition fired or used.

In addition, in certain embodiments, a magazine installed or insertedwithin the weapon can communicate a count of the ammunition within themagazine to the weapon and/or to one or more accessories installed onthe weapon or within proximity of the weapon. This communication can beaccomplished using an optical transceiver, and/or radio included in themagazine. Advantageously, in certain embodiments, using the opticaltransceiver eliminates cables that can be susceptible to damage duringmanufacture and/or use.

Additional features and embodiments of the magazine and weapon systemare described below with respect to the figures.

Example Magazine

FIG. 1 illustrates a cross-section of an embodiment of the inside of amagazine 100 that may be used with certain embodiments disclosed herein.Further, FIG. 2 illustrates a line drawing of the embodiment of thecross-section of the magazine 100 illustrated in FIG. 1.

With respect to FIG. 1, the magazine 100 can include a housing 102 thatincludes a chamber 104 for holding one or more bullets or cartridges 106of ammunition. It should be understood that the features disclosedherein can be used with any type of magazine capable of holding any typeof ammunition.

As illustrated, the magazine includes a follower 108 that is configuredto push the cartridges 106 towards an egress point of the magazine 100.The follower 108 includes a magnet 110. As cartridges 106 are removedfrom the magazine (e.g., when a cartridge 106 is fired), the follower108 moves towards the egress point of the magazine 100 shrinking thesize of the chamber 104 that holds cartridges 106 within the magazine100. Consequently, as the follower 108 moves, so does the magnet 110,thereby altering the location of the magnet 110 within the magazine 100.

The location of the magnet 110 can be used to determine the number ofcartridges 106 within the housing 102 of the magazine 100. To determinethe magnet's 110 location, the magazine 100 includes a number of Halleffect sensors 112. The Hall effect sensors 112 can detect the locationof the magnet 110 using the Hall effect. The Hall effect relates to theproduction of a voltage difference across an electrical conductor when amagnetic field is perpendicular to a current in the conductor. Thus, asthe magnet 110 approaches a Hall effect sensor 112 within the magazine100, a voltage will be produced that can be measured by electroniccircuitry within, and/or external to, the magazine 100. Based on thedetected voltage, the location of the magnet 110 can be determined andconsequently, the location of the follower 108. This information can beused to determine the quantity of ammunition within the chamber 104. Incertain embodiments, the Hall effect sensors 112 may be replaced by anytype of transducer, electrical, magnetic, or electromagnetic sensor thatproduces or modifies an electrical signal or measurable electricalproperty (e.g., a voltage, a current, or a resistance) based at least inpart on a detected magnetic field from a magnet. For example, in someembodiments, an anisotropic magnetoresistive or anisotropicmagnetoresistance (AMR) sensor may replace or complement the Hall effectsensors 112. In some embodiments, the microelectromechanical systems(MEMS) magnetic field sensor may be used instead of, or in addition to,the Hall effect sensors 112. Other examples of sensors that may be usedin place of or in addition to the Hall effect sensors 112 may includesensors that measure or detect negative magnetoresistance, giantmagnetoresistance, tunnel magnetoresistance, or extraordinarymagnetoresistance. In some embodiments, the change in the type of sensor112 may be paired with a change of the type of magnet 110.

The combination of the Hall effect sensors 112 and the magnet 110 maycreate a linear encoder. The set of sensors 112 may be used to encode oridentify particular locations within the magazine 100. Based on thelocation of the magnet 110 with respect to the set of sensors 112, thenumber of cartridges loaded within the magazine 100 can be determined.The position or location of the magnet 110 may change as the number ofcartridges within the magazine 100 changes. Based on the change inlocation of the magnet 110, as determined by the one or more Hall effectsensors 112 that generate electrical signals, the number of cartridgeswithin the magazine 100 can be determined. In some embodiments, each, orall, of the sensors 112 may generate an electrical signal based on thesensors relative location to the magnet 110. In some such cases, thelocation of the magnet 110 may be determined based on the respectivesignals generated by the set of sensors 112. In some embodiments, theone or more electrical signals generated by the one or more sensors 112may be compared to a table that is stored in the circuitry or memory ofthe magazine 100. Based on the comparison between the generatedelectrical signals and the data stored in the table, the location of themagnet 110 may be determined. In some embodiments, the signals generatedby the sensors 112 are compared to data stored within the table. Inother embodiments, values that are generated or determined based on thesignals generated by the sensors 112 are compared to data stored withinthe table.

Although the linear encoder is primarily described herein as beingformed from a magnet and a set of magnetic sensors, the linear encoderis not limited as such. For example, the linear encoder may use anoptical, capacitive, inductive, or resistive system. For instance, withan optical system, the magnet may be replaced with a light source, suchas an LED. The magnetic sensors may be replaced with light sensors thatare capable of determining the linear encoder position based on the oneor more light sensors that detect light from the light source. Acapacitive system may similarly be implemented to detect a capacitancebetween an element attached to the follower and an element aligned withthe cartridges in the magazine. Further, the linear encoder may be anabsolute encoder or an incremental encoder.

In some embodiments, the number of sensors 112 included within themagazine corresponds to the maximum number of cartridges that can beloaded into the magazine 100. Thus, if the bottommost sensor that isclosest to the butt of the magazine 100 generates an electrical signal,it can be determined that the magazine includes the maximum number ofcartridges. In another example, if the sensor 112 closest to the feedpoint or ingress/egress point of the magazine 100 generates anelectrical signal, it can be determined that the magazine 100 is empty.It should be understood that multiple sensors 112 may generate a signal.The number of cartridges within the magazine 100 may be determined byinterpolating or averaging the signals, or by selecting the sensor 112that generates the strongest electrical signal.

However, with some magazines, having a one-to-one correspondence betweenthe number of sensors 112 and the maximum number of cartridges that themagazine 100 can hold is insufficient to accurately determine the numberof cartridges within the magazine 100. There are several reasons whyhaving a one-to-one correspondence between the number of sensors 112included in the magazine 100 and the number of cartridges the magazine100 can hold when fully loaded is insufficient. For example, one reasonwhy having a one-to-one correspondence between sensors and cartridges isthat, even for a particular size cartridge, there may be variation incartridge size between manufacturers such that the alignment between thecartridges within the magazine 100 and the sensors 112 may vary fordifferent manufacturers of the same ammunition type. As another example,some magazines are capable of holding different types of cartridges,which may vary in size and may result in a different position of themagnet 110 for the same number of cartridges. For instance, the magazine100 may be capable of holding both 0.458 SOCOM rounds and 0.223 rounds,which differ in size, thereby causing a location of the magnet 110 withrespect to the sensors 112 to differ for the same number of cartridges.

In some cases, even if the same type of ammunition from the samemanufacturer is consistently used with the magazine 100, wear and tearof the magazine 100 over time may cause the alignment of the magnet 110with respect to the sensors 112 to change for the same number ofcartridges. For example, the rigidity of the plastic or the strength ofthe spring in the follower may change over time. In some casesenvironmental conditions, such as temperature, may cause a change in themagazine 100 that affects the alignment of the magnet 110 with thesensors 112 for a particular number of cartridges inserted into themagazine 100. Further, with many weapons, inserting the magazine 100into the weapon may cause pressure to be applied to the cartridgeswithin the magazine 100. This pressure may shift the cartridges comparedto when the magazine 100 is not inserted into the weapon, therebymodifying the alignment of the magnet 110 with the sensors 112. As such,in certain embodiments, the determination of the number of cartridgeswithin the magazine 100 may change based on whether the magazine 100 isinserted into the weapon resulting in an inaccurate count of thecartridges either when the magazine 100 is inserted into the weapon orwhen the magazine 100 is not inserted into the weapon.

For at least the above reasons, in some cases having a one-to-onecorrespondence between the number of sensors included in the magazine100 and the maximum number of cartridges that the magazine 100 cansupport may be insufficient. Thus, in certain embodiments, the magazine100 may include more sensors 112 than the total number of cartridgesthat the magazine 100 can hold or is designed to hold. Advantageously,in certain embodiments, by including a greater number of sensors in themagazine 100 than the number of cartridges the magazine 100 can holdwhen at capacity, the accuracy of the measurements made by the linearencoder of the magazine 100 may be increased, thereby reducing oreliminating the problems associated with having a one-to-onecorrespondence between the sensors and the number of cartridges that themagazine 100 can support. To determine the number of cartridges withinthe magazine 100, the linear encoder may further include a hardwareprocessor that can compare the signals generated by the sensors 112 withthe calibration table stored in a memory to determine the number ofcartridges within the magazine 100. The hardware processor may generatea value, such as a coordinate value indicating a relative location ofthe magnet 110 with respect to a coordinate system associated with thesensors 112. The hardware processor may compare the value to valueswithin the calibration table to identify a number of cartridgescorresponding to the value. In certain embodiments, the hardwareprocessor may interpolate signal values from the sensors 112 to moreaccurately identify the location of the magnet 110, and consequently thenumber of cartridges loaded within the magazine 100.

In certain embodiments, the number of sensors within the magazine maymatch the number of cartridges the magazine is capable of holding. Insome such embodiments, a linear encoder may be used to determine thenumber of cartridges in the magazine. In certain embodiments, the linearencoder may eliminate the problems described above when the granularityof sensors matches the maximum ammunition capacity of a magazine. Thelocation of the magnet in the magazine with respect to the sensors inthe magazine may be determined based on the electrical signals receivedfrom two or more sensors. This location may be mapped to a calibrationtable to determine the number of cartridges within the magazine. Bymapping the location to the calibration table, instead of using theexact position of the magnet with respect to the sensors to determine anammunition count, a range of positions may be used to determine theammunition count enabling the linear encoder to account for wear andtear of the magazine and differences in cartridge sizes. Thus, insteadof determining that a magazine includes X cartridges because sensor Xdetects the magnet, it can be determined that because the magnet isbetween sensors X and Y, the magazine includes X cartridges. Withmagazines that require a one-to-one correspondence between the sensorand the ammunition count, a change in the position of the magnet due to,for example, wear and tear may cause an error in determining theammunition count in the magazine. However, with a magazine that includesa linear encoder, the amount of ammunition in the magazine can bedetermined even when the magnet does not align with a particular sensor.

As described above, the number of cartridges 106 in the magazine 100 canbe determined based on the location of the magnet 110 with respect tothe one or more Hall effect sensors 112. Thus, to determine the numberof cartridges 106, it is desirable that the Hall effect sensors 112maintain particular positions within the magazine 100. However, duringmanufacture and/or over time, the position of the Hall effect sensors112 may shift. For example, vibrations caused by the firing of theweapon within which the magazine 100 is loaded may result in movement ofthe Hall effect sensors 112. To maintain the position of the Hall effectsensors 112, one or more alignment pins 114 can be used to maintain theposition of the circuit board that includes the Hall effect sensors 112.

In some embodiments, the use of an alignment pin is unnecessary, and thealignment pin may be omitted. For example, the Hall effect sensors maybe secured or built into the housing of the magazine 100 such that thesensors 112 do not shift over time. Alternatively, or in addition, thecalibration table may be updated or modified over time using acalibration or recalibration process. The calibration process may beused to determine the location of the magnet 110 with respect to thesensors 112. By calibrating or recalibrating the magazine 100, the tablethat identifies the number of cartridges loaded within the magazine 100based on a determination of the location of the magnet 110 with respectto the sensors 112 may be updated. Thus, changes in location of themagnet 110 with respect to the sensors 112 for a particular number ofcartridges loaded within the magazine 100 may be captured by thecalibration process, thereby reducing or eliminating inaccuracies in themeasurement of the number of cartridges loaded into the magazine thatmay be introduced by wear and tear of the magazine or variation inammunition loaded into the magazine. This calibration processesdescribed in more detail below with respect to FIG. 32.

As is described further herein, the amount of cartridges within themagazine can be presented to a user via a display included in themagazine 100. However, in some cases, it may be desirable to transmitinformation associated with the magazine, such as the number ofcartridges within the magazine or the state of a battery used to powerthe circuitry included in the magazine, to the weapon or another system.In some embodiments, the magazine 100 can include an optical transceiver116 or radio to transmit the information to the weapon or anotherdevice. Further, the magazine 100 may include a digital to opticalsignal adapter enabling the conversion of a digital signal created bythe electronic circuitry 122 to an optical signal for transmission bythe optical receiver 116. Moreover, the magazine 100 may include anoptical to digital signal adapter enabling the conversion of an opticalsignal received at the optical transceiver 116 capable of beingprocessed by electronic circuitry 122.

The enlarged portion 120 of the bottom of the magazine 100 illustratesadditional details of the magazine 100. As illustrated within theenlarged portion 120, the magazine includes electronic circuitry 122that receives one or more electrical signals from the one or more Halleffect sensors 112. Based on the one or more electrical signals, theelectronic circuitry 122 determines the position of the magnet 110and/or follower 108 within the magazine 100 and consequently, the numberof cartridges 106 within the magazine 100. The electronic circuitry 122may include a hardware processor or programmable hardware, such as afield programmable gate array (FPGA), which may be configured tointerpret the signals received from the sensors 112 and determine thelocation of the magnet 110 and consequently the number of cartridgeswithin the magazine. Further, the hardware processor or programmablehardware of the electronic circuitry 122 may be configured to performone or more of the processes described herein.

Further, the magazine 100 includes a display 124, which as illustratedmay be a 7 segment light emitting diode (LED) display. However, itshould be understood that the display 124 is not limited to a 7 segmentLED display and can include any type of display that can output, amongother things, the number of cartridges within the magazine 100 to auser.

The electronic circuitry 122 and/or the Hall effect sensors 112 can bepowered by a battery 126 that can be included within the magazine 100.In some embodiments, the battery 126 is rechargeable using, for example,wireless charging. Alternatively, and/or in addition, the battery may bereplaced by opening a cap 128. The cap 128 can be a sealing cap that isconfigured to prevent any moisture or detritus from entering themagazine 100.

Further, the magazine 100 may include a control interface 130 (such as,for example, a control button) that can be used to activate ordeactivate the system for measuring the cartridges in the magazine 100.Moreover, the control interface 130 may be used to modify the brightnessof the display 124. In some embodiments, the control interface 130 canbe used to show or hide the display of the number of cartridges withinthe magazine 100. In some cases, a user may determine that light fromthe display 124 is undesirable. For example, in some combat situations,it may be desirable to reduce as much light as possible emanating fromthe soldier. Advantageously, in certain embodiments, by being able tocontrol the display of the ammunition within the magazine 100, or otherinformation, a user can determine whether or not the display 124 isactive. Moreover, in some cases, the control interface 130 can be usedto control whether ammunition information is displayed on an alternativedisplay, such as via a scope attached to the weapon or a helmet worn bythe user. In some embodiments, the control interface 130 is disposed ona portion of the magazine 100 that is inserted into the firearm. In suchembodiments, the control interface 130 can only be accessed by the userwhen the magazine 100 is not in the firearm. This configuration can helpreduce or eliminate false readings that may occur if the controlinterface 130 is operated while the magazine is inserted in the firearm.In certain embodiments, the control interface 130 comprises one or moreof a control panel, a control button, a wired control interface, awireless control interface, or a combination of interfaces. For example,the control interface 130 may include a cell phone, laptop, or otherwireless device. A user may interact with the control interface 130 torequest a count of ammunition within one or more magazines. Further, auser may interact with the control interface 130 to trigger calibrationor recalibration of one or more magazines to update a calibration orlinear encoder table used to determine a number of cartridges within amagazine.

FIG. 3 illustrates an embodiment of the Hall effect sensors 112 withinan embodiment of the magazine 100. As illustrated, the Hall effectsensors 112 may include a plurality of sensors 112 that can each providea signal to the electronic circuitry 122 (see FIG. 1) of the magazine100. In some cases, each Hall effect sensor 112 provides a signal to theelectronic circuitry 122. In other cases, a subset of the Hall effectsensors 112, such as those within a threshold distance of the magnet110, provide a signal to the electronic circuitry 122.

The Hall effect sensors 112 may be included as part of a circuit board302. The circuit board 302 may be designed to precisely place, within athreshold degree of tolerance, the Hall effect sensors 112 with respectto the location of the magnet 110 when the magazine 100 is loaded with aparticular amount and type (e.g., size) of ammunition. Alternatively, orin addition, the electronic circuitry 122 may be calibrated based on theposition of the Hall effect sensors 112 and the magnet 110. In someembodiments, the circuit board 302 may be a flexible circuit board.Advantageously, in certain embodiments, by using a flexible circuitboard, the hall circuit board 302 can be shaped to match the curvatureof the magazine 100 and to maintain the Hall effect sensors 112 at aparticular distance from the magnet 110 when the magnet is positionedperpendicular to a particular Hall effect sensor 112.

As previously mentioned, one or more alignment pins 114 may be used toposition the circuit board 302 within the magazine 100. FIG. 4Aillustrates an embodiment of the alignment pin 114 within an embodimentof the magazine 100. Although the alignment pin 114 is illustrated as arod, it should be understood that other shapes may be used. For example,the alignment pin 114 may include fingers or other protrusions from thepin 114 that can be used to grip or further hold the circuit board 302in place. Further, in the embodiments of FIG. 4A, the Hall effectsensors 112 are positioned at the rear of the magazine 100 and themagnet 110 is positioned at the rear.

In some embodiments, the alignment pin 114 is omitted. FIG. 4Billustrates another embodiment of the Hall effect sensors 112 within anembodiment of the magazine without an alignment pin. As illustrated inFIG. 4B, in some implementations, the circuit board 302, and associatedHall effect sensors 112, may be positioned on a side of the housing ofthe magazine as opposed to the back of the magazine behind thecartridges. In some embodiments, the Hall effect sensors 112 may bepositioned near the front 402 of the magazine, where the front isdefined as the direction in which the cartridges are ejected when firedfrom a firearm. As described in more detail below, by positioning theHall effect sensors 112 near the front of the magazine, another Halleffect sensor may be positioned at the rear of the magazine fordetermining when the magazine is inserted into a weapon or firearmwithout the additional Hall effect sensor detecting the magnet 110positioned near or adjacent to the front edge 402 (e.g., the edge inwhich the cartridges are pointing when loaded within the magazine 100)of the magazine 100. Further, the Hall effect sensors 112 may bepositioned along the vertical or y-axis of the magazine to form avertical column of sensors. Many magazines are not completelyrectangular in shape, but are instead curved to some degree.Accordingly, in certain embodiments, the Hall effect sensors may bepositioned substantially vertically along an axis that matches thecurvature of the magazine.

In certain embodiments, a magnet attached to a follower 108 may align inthe horizontal or x-axis of the magazine with one or more of the Halleffect sensors 112 when one or more cartridges are loaded in themagazine. In certain implementations, one or more of the Hall effectsensors 112 may align with the magnet attached to the follower 108 whenno cartridges are loaded in the magazine.

FIG. 5 illustrates an embodiment of the follower 108 within anembodiment of the magazine 100. Often, followers include a solidprotrusion from the follower body that pushes cartridges within themagazine towards the egress of the magazine. In certain embodiments ofthe follower 108, the solid protrusion is replaced by a spring-loadedplunger 502. Advantageously, in certain embodiments, replacing the solidprotrusion with the spring-loaded plunger 502 creates a space forinclusion of the electronic circuitry 122. Thus, in certain embodiments,the magazine 100 can include the electronic circuitry 122 forautomatically and electronically monitoring the number of cartridgeswithin the magazine with minimal or no increase in the size of themagazine 100 compared to magazines that are not capable ofelectronically monitoring the number of cartridges within the magazine.FIG. 6 illustrates a line drawing of the embodiment of the followerillustrated in FIG. 5.

Example Magazine Housing

FIG. 7 illustrates an embodiment of the outside of a magazine 100. FIG.8A illustrates a line drawing of another perspective of the outside ofthe magazine illustrated in FIG. 7. As previously described, themagazine 100 may include a display 124 and an optical transceiver 116.One or more of the display 124 and the optical transceiver 116 may bepart of the housing 102. Alternatively, the display 124 and/or theoptical transceiver 116 may be inserted into gaps or spaces within thehousing 102.

In some embodiments, the magazine 100 may include a machine-readablecode that includes a unique identifier for the magazine. Thismachine-readable code may be a bar code, a matrix code, a quick response(QR) code, or any other type of machine-readable code. Alternatively, orin addition, the magazine 100 may include a radio frequencyidentification (RFID). Advantageously, in certain embodiments, byincluding a machine-readable code and/or tag on the magazine 100, themagazine 100 can be registered with a weapon enabling a user, such as asoldier, to track the total ammunition available to the user. In someembodiments, the magazine 100 may be registered with the weapon uponinsertion of the magazine 100 within the weapon. When the magazine isloaded into the weapon, circuitry within the weapon may communicate withcircuitry within the magazine to register the magazine with the weapon.

Tracking the total ammunition enables a user to monitor ammunition whilein a particular environment. For example, a soldier in the field canmonitor ammunition without needing to remember how many magazines are inthe soldier's gear or how many magazines or cartridges the soldier hasused. In some embodiments, the machine-readable code and/or RFID tag canbe modified to reflect the amount of ammunition remaining in themagazine. Alternatively, or in addition, an indicator may provide astatus of the magazine. For example, when the magazine is empty or hasless than a threshold number of cartridges, the indicator may turn redinforming the user that the cartridge is empty or has below a thresholdnumber of cartridges. Thus, for example, when a soldier is in the field,he or she can easily determine whether a magazine is a loaded magazineor a spent magazine that is now empty or is close to empty.

In some use cases, a user may register a magazine that is currentlyregistered with one weapon with another weapon. For example, a firstsoldier may take a magazine registered to the soldier's weapon and giveit to a second soldier, who may then register the magazine with his orher weapon. In certain embodiments, when the second soldier registersthe magazine with his or her weapon, the magazine may be deregisteredfrom the first soldier's weapon. In some embodiments, the magazine maysend a signal to the first soldier's weapon to indicate that themagazine should be deregistered from the first soldier's weapon. Inother embodiments, the weapon of the first soldier may deregister themagazine from the weapon and the weapon is no longer able to communicatewith the magazine. In some cases, the weapon may no longer be able tocommunicate with the magazine because the magazine moves outside ofcommunication range of the weapon. Alternatively, or in addition, theweapon may no longer be able to communicate with the magazine becausewhen the magazine is registered with the second weapon, the secondweapon changes an identifier of the magazine. For example, each weaponmay provide an identifier to the magazine that is based at least in parton the weapon's identifier. Thus, when a magazine is registered to aweapon, the magazine's identifier may change and the magazine may nolonger respond to attempts to communicate with the magazine from anotherweapon with which the magazine was previously registered.

In some embodiments, the magazine 100 may include a carbon fiber casing.The use of a carbon fiber casing can reduce the weight of the magazine100 offsetting any added weight from the additional sensors andelectronics. Further, in some embodiments, the magazine 100 may includea rubber sleeve. The rubber sleeve can improve the strength anddurability of the magazine 100 as well as provide additional protectionfor the added electronics to help prevent damage during impacts (e.g.,if the magazine is dropped).

As illustrated in FIG. 8A, the control interface 130 may be a button orother interface element positioned near the base of the magazine. A usermay interact with the control interface 130 to cause a cartridge countto be displayed on a display of the magazine 100, on a display of aweapon, or any other display that can present the cartridge count.

In some cases, the magazine may be inserted into a traditional weapon,or a weapon that does not support one or more of the embodimentsdescribed herein. In some such cases, the magazine 100 may present aninaccurate count of the cartridges within the magazine 100 when the userinteracts with the control interface 130 because, for example, thepressure applied to the cartridges in the magazine by the weapon orbecause of the inability to determine when a cartridge is within achamber of the weapon. In some cases, the weapon may support embodimentsdisclosed herein, but the battery may be drained or the circuitry of theweapon may be off. In such cases, an inaccurate cartridge count may alsobe displayed because the status of the bolt and/or chamber may beunknown.

FIG. 8B illustrates an embodiment of a magazine with a control interface130 positioned near the egress of the magazine in accordance withcertain embodiments. In particular the controller interface 130 ispositioned at a location on the magazine 100 that is inaccessible whenthe magazine 100 is inserted into a weapon. Advantageously, by movingthe control interface 130 to a location the magazine that isinaccessible when the magazine 100 is inserted into the weapon, a usercannot interact with the control interface 130 and therefore, cannotobtain a cartridge count without removing the magazine 100 from theweapon. Thus, a magazine is prevented from displaying an inaccuratecartridge count in cases where the magazine is inserted into a weaponthat does not support embodiments disclosed herein, or in cases wherethe weapon does support the embodiments disclosed herein, but in whichthe battery of the weapon is drained or dead, or in which the circuitryof the weapon is inactive or turned off. Further, the control interface130 may be positioned within a recess 820 preventing the weapon frominteracting with the control interface 130 when the magazine is insertedinto the weapon.

FIG. 8C illustrates the magazine of FIG. 8B inserted into a weapon. Asillustrated, the control interface 130 is not accessible when themagazine 100 is inserted into the weapon. Accordingly, a user cannotinteract with the control interface 130 to obtain a cartridge countwithin the magazine. It should be understood that the cartridge orammunition count may be obtained by either removing the magazine, orinteracting with a weapon that includes the embodiments disclosed hereinfor obtaining the ammunition count from the magazine and for determiningthe status of the chamber and/or bolt of the weapon.

Example Non-Contact Connector

In some embodiments, the magazine 100 can communicate with a weaponusing a non-contact connector, such as an optical connector. In someembodiments, wireless radio frequency communication or electricalcommunication may be used between the magazine and the weapon. However,in some embodiments, the weapon may be fired at a faster rate than thespeed of the RF communication leading to an inaccurate ammunition countbeing displayed to the user. Further, electrical communicationconnections may become damaged by the environment. Advantageously, incertain embodiments, using an optical connector may enable fastercommunication compared to radio communication. Further, opticalconnectors can be cleaned using water and are less susceptible to damageby the environment or rough handling compared to electrical connectors.

FIG. 9A illustrates an embodiment of a non-contact optical connector 116included as part of the magazine. The optical transceiver 116 may bepositioned at a location that enables the optical transceiver 116 toline up or mate with an optical transceiver included in a weapon that isdesigned to be used with the magazine 100, or for which the magazine 100is designed. The optical transceiver 116 is configured to communicateusing light and thus, can mate with another optical transceiver withoutmaking physical contact. However, in some cases, the optical transceiver116 may be in physical contact with another optical transceiver tominimize or eliminate potential interference from ambient light.

Further, while there are advantages to using an optical transceiver 116,such as the elimination of breaks in a wire-based communication system,in some embodiments the optical transceiver 116 may be supplemented byor replaced by other types of transceivers, such as a wirelesstransceiver, or a wire-line transceiver configured to communicate withthe weapon when metal contacts included in the transceiver of themagazine contact corresponding metal contacts in a transceiver of theweapon. In some embodiments, the magazine 100 may communicate with aweapon using inductive, electromagnetic, or electrical communication.For example, an alignment of inductive elements may enable a data and/orpower transfer between the weapon and the magazine 100. As anotherexample, when the magazine is inserted into the weapon, pins or othercontact points of a transceiver on the magazine may align withcorresponding pins or contact points on the weapon enabling electricalcommunication.

In some cases, the transceiver 116 may use near field communications(NFC) and/or radio frequency communication. Alternatively, or inaddition, the transceiver 116 may use ultra-wide band communication toreduce the impact of interference on the communications and/or to reducethe chance of eavesdropping. The ultra-wide band communication maycommunicate over a larger bandwidth than conventional narrowbandcommunication or carrier wave transmission. In some embodiments, theultra-wide band communication may occur over a bandwidth exceeding 500MHz. In some embodiments, the transceiver 116 may use spread spectrumcommunication. Further, in some embodiments, the transceiver 116 may useencrypted communications or a secure channel during communication. Insome embodiments, the transceiver 116 may use Bluetooth®, Wi-Fi®, theRADIUS protocol, or any other type of narrow band or wide bandcommunication protocols.

FIG. 9B illustrates an embodiment of a signal convertor 900 within amagazine and a signal converter 902 within a weapon that enablescommunication between the optical transceiver 116 of the magazine and anoptical transceiver of a weapon, such as the optical transceiver 1602described with respect to FIG. 16 below. In certain embodiments, thesignal converter 900 may be or may be included as part of the opticaltransceiver 116.

The signal converter 900 can be configured to convert between electricaldigital signals received from a magazine processor 906 and opticaldigital signals, which can be transmitted optically to a signalconverter 902 of a weapon. It should be understood that the reverseprocess is possible as well. In other words, the signal converter 902 ofthe weapon may communicate optically with the signal converter 900 ofthe magazine.

An electrical signal can be passed from a magazine processor 906 to anoptical transmitter 910. This electrical signal may be a digital signalused to provide information about the magazine 100 to a weapon. Forexample, the magazine may communicate a cartridge count to the weapon.The optical transmitter 910 can be configured to convert an electricaldigital signal into a corresponding optical digital signal. The opticaltransmitter 910 can convert electrical signals to optical signals usingappropriate techniques, such as, for example, by outputting an opticalsignal proportional to the input electrical current. The opticaltransmitter 910 can be any suitable component for converting electricaldigital signals to optical digital signals, such as, for example,HXT4101A-DNT manufactured by GigOptix, Inc. of San Jose, Calif. Theoutput of the optical transmitter 910 is an optical digital signal thatcan be coupled to a collimating lens 920.

In some embodiments, an input optical digital signal passes through afocusing lens 921 configured to substantially focus a collimated opticalsignal onto an optical receiver 912. The focused optical digital signalcan be substantially directed and focused onto the optical receiver 912configured to convert an optical digital signal into a correspondingelectrical digital signal. The corresponding electrical digital signalcan be provided to the magazine processor 906. This electrical digitalsignal may be an acknowledgement of the ammunition count, a command toobtain a magazine count, an updated calibration table for a linearencoder of the magazine, or any other command or data that the weaponmay supply to a magazine. The optical receiver 912 can convert opticalsignals to electrical signals using any appropriate technique such as,for example, outputting an electrical current that is proportional tothe input power of the optical signal. The optical receiver can be anysuitable component for converting optical digital signals to electricaldigital signals, such as, for example HXR-4101A-DNT-T manufactured byGigOptix, Inc. of San Jose, Calif.

The output optical digital signal output by the optical transmitter 910can be collimated by collimating lens 920. The collimated optical signalmay pass through an output gap 922 before passing through a focusinglens. The collimated optical signal passes through an input gap 923before being focused by focusing lens 921. In some embodiments, theoutput and input gaps 922 and 923 can be about 1 mm between lenselements. In some embodiments, the gaps 922 and 923 may be greater thanor equal to about 2 mm, less than or equal to about 1 mm, about 0.5 mm,or about 1.5 mm. In some embodiments, the gaps 922 and 923 can havediffering distances between lens elements, such as, for example, therecan be about 1.5 mm between lens elements 920 and 926 in output gap 922and there can be about 0.8 mm between lens elements 921 and 927 in inputgap 923. In some embodiments, the non-contact optical connection caninclude transparent windows 928 and 929 of the signal converter 900 thatare configured to have an exterior surface that is substantially alignedwith an exterior surface of the corresponding transparent windows 928and 929 of the signal converter 902. The transparent windows 928 and 929can be configured to be substantially transmissive for wavelengths thatcorrespond to wavelengths of light used in the optical-transceiver 918of the magazine and the weapon. The transparent windows 928 and 929 canbe treated with coatings to make them more durable, scratch resistant,hydrophobic, polarized, filtered, and the like. The transparent windows928 and 929 can provide a protective surface for the lens elements 920,921, 926 and 927. The transparent windows 928 and 929 can provide asurface that is cleaned with relative ease to maintain optical couplingbetween components of the magazine and the weapon.

In some embodiments, the signal converters 900 and 902 may include powerconnectors and power transmission lines that can optionally be used tosupply power to the magazine and/or to the weapon. In some suchembodiments, the power may be used to power a processor in the magazineor the weapon. Alternatively, or in addition, the power may be used tocharge a battery in the magazine or the weapon.

In certain embodiments, the magazine processor 906 of the magazine maybe the electronic circuitry 122 or may be included in the electroniccircuitry 122 of the magazine 100. The magazine processor 906 may be anFPGA, a microprocessor, or a custom processor configured to at leastdetermine the ammunition count for cartridges inserted into the magazine100. Further, the magazine processor 906 may control a display of themagazine 100.

The firearm processor 908 of the weapon may be or may be included in theelectronic circuitry 2002 described in more detail in FIG. 20. Thefirearm processor 908 may be an FPGA, a microprocessor, or a customprocessor configured to perform one or more of the embodiments describedherein. Further, the firearm processor 908 may determine a number ofcartridges registered to the firearm or weapon via the inclusion of thecartridges in one or more magazines registered with the firearm orweapon. In some embodiments, the firearm processor 908 may determinewhether a cartridge is loaded within a chamber of the firearm. Inaddition, the firearm processor 908 may determine whether the firearm isjammed.

Example Magazine Display

FIG. 10 illustrates an embodiment of a display 124 included as part ofthe magazine. The display 124 is positioned at the bottom of the side ofthe magazine 100 that faces the user so that the user can view thedisplay 124 while creating minimal interference with the chamber thatincludes the cartridges and to prevent blockage from the weapon when themagazine 100 is inserted into the weapon. However, the location of thedisplay 124 is not limited as such and may be positioned elsewhere onthe magazine 100. For example, the display 124 may be positioned closerto the optical transceiver 116 (see FIG. 7) so that the display 124 iscloser to eye level with a user when the user is using the weapon. Insome cases, the display 124 may extend outwards from the housing 102providing room for installation of the display 124 without interferingwith the placement of cartridges within the magazine 100.

As illustrated in FIG. 10, the display 124 may be inset. Advantageously,in certain embodiments, the inset display 124 can improve visibility tothe user while reducing visibility of the display 124 by otherobservers, such as enemy combatants. Further, the display 124 maycomprise an LED display, an LCD display, an OLED display, a touchscreendisplay, or any other type of display. Moreover, the display 124 maydisplay one or more data items to a user. For example, the display 124may display a number of cartridges within the magazine, a number ofcartridges fired from the magazine, a number of shots fired by theweapon, a number of magazines available to the user, a jam state of theweapon, whether a cartridge is within a chamber of the weapon, and anyother information relating to the status of the magazine loaded in theweapon, magazines available to the user, and/or the weapon itself. Insome embodiments, the display 124 may be optional and/or may supplementan additional display associated with the weapon and/or other gear(e.g., a helmet or goggles) of the user.

In certain embodiments, the output of the number of cartridges within amagazine, or a number of cartridges available to a user acrossmagazines, maybe an auditory output that is received via a user's radioor headset. In some cases, the user may receive both a visual and audioindicator of the number of cartridges available.

Example Magazine Circuitry

FIG. 11A illustrates an embodiment of the electronic circuitry 122 anddisplay 124 included as part of the magazine. As illustrated, theelectronic circuit 122 may be fit into the base or cap 128 of themagazine. FIG. 11B illustrates an alternative view of the embodiment ofthe electronic circuitry 122 and display of FIG. 11A. As previouslyillustrated with respect to FIG. 1, the battery 126 may be or may beshaped as an AA or AAA battery. Alternatively, the battery may be adiscus or circular shaped battery, similar to a watch battery in shape.The battery may be a lithium-ion battery, an alkaline battery, a nickelcadmium battery, a nickel metal hydride battery, or any other type ofbattery. In some cases, the battery may be a rechargeable battery. Inembodiments where the battery is a rechargeable battery, the battery maybe recharged by placing the magazine on a recharger or a charging pad.In some embodiments, the battery may be removed from the magazine forreplacement or charging purposes. In other embodiments, the battery maynot be removed from the magazine. For example, in some cases, theelectronics of the magazine may be housed in a waterproof housing, andthe battery may be sealed within the housing.

FIG. 12 illustrates an embodiment of a display circuit 1200 for adisplay. The display may be part of a magazine, a weapon, a scope, orother component of a weapon or weapon system. The display circuit 1200may be included as part of the display or may be in communication withthe display. In some embodiments, the display circuit 1200 may beincluded as part of the electronic circuitry of the weapon, such as theelectronic circuitry 2002 described below with respect to FIG. 20.

The display circuit 1200 may include a plurality of light emittingdiodes (LEDs) 1202. Alternatively, or in addition, these light emittingdiodes 1202 may be included as part of the display and may be inelectrical communication with the display circuit 1200. The LEDs 1202may include ultra-bright LEDs that are visible when a user is in fulldaylight. The ultra-bright LEDs 1202 may have a very bright outputenabling them to be viewable during the daytime. For example,ultra-bright LEDs 1202 may have a luminosity of 100 millicandelas (mcd),200 mcd, 300 mcd, 500 mcd, or more, or any range between the foregoing.Further, the ultra-bright LEDs 1202 may be dimmed to a very low levelenabling them to be viewed through night vision goggles withoutinterfering with the user's ability to use the night vision goggles. Forexample, the ultra-bright LEDs 1202 may be configured to consumemilliwatts of power during the daytime and may be configured to consumemicrowatts of power when a user is wearing night vision goggles.Further, the ultra-bright LEDs 1202 may be configured to output lightand varying degrees of magnitude. Thus, there may be one brightnesslevel during a sunny day, another brightness level during a cloudy day,another brightness level at night, and another brightness level when auser is wearing night vision goggles. In some embodiments, the LEDs 1202may be dual-mode or multi-mode LEDs that are capable of functioning atdifferent levels of brightness based at least in part on an amount ofpower received and/or on a control signal. In other words, the LEDs 1202may provide different brightness outputs based at least in part on theamount of power received.

In certain embodiments, the LEDs 1202 are configured to provide a sevensegment display. Further, the LEDs 1202 may display multiple numbers. Insome embodiments, the LEDs 1202 may be configured to display charactersand/or symbols instead of or in addition to the numbers.

The display circuit 1200 may control the LEDs 1202 to make them viewableduring the daytime, at nighttime, or as previously described when a useris wearing a vision goggles. To enable the different viewable modes, thedisplay circuit 1200 includes multiple resistor paths or other currentdriving device that are in communication with a battery 1210. Forexample, the display circuit 1200 may include two resistor paths: afirst path that includes the resistor 1204 and a second path thatincludes resistor 1206. The resistor 1204 may be relatively smallresistor (e.g., a 10, 20, 50, or 100 ohm (O) resistor, or any valuebetween the foregoing resistances) compared to the resistor 1206 whichmay be a relatively large resistor (e.g., a 1, 2, 10, or 50 mega-ohm(MO) resistor, or any value between the foregoing resistances). Further,the display circuit 1200 may include a switch 1208 that may connect thebattery 1210 to the light emitting diodes 1202 via the path thatincludes the resistor 1206 or the path includes the resistor 1204.

In certain embodiments, when a user is not wearing night vision goggles,the LEDs 1202 may be connected to the battery 1210 via the path thatincludes the smaller resistor 1204 resulting in a brighter outputcompared to when the LEDs 1202 are connected to the battery 1210 via thepath that includes the larger resistor 1206. In contrast, when it isdetermined that the user is wearing night vision goggles, LEDs 1202 maybe connected to the battery 1210 via the path includes the largerresistor 1206 resulting in a dimmer output compared to the when the LEDs1202 are connected to the battery 1210 via the path includes the smallerresistor 1204. In some embodiments, the display circuit 1200 may includeadditional resistor paths or other driver circuitry that connect thebattery 1210 to the light emitting diodes 1202 depending on thebrightness of the ambient light and/or whether the user is wearing nightvision goggles.

The switch 1208 may select the resistor paths to connect the battery1210 to the light emitting diodes 1202 based on a control signalreceived from a controller 1212. The controller 1212 may configure theswitch 1208 based on input from a user interface switch 1214. The userinterface switch 1214 may enable a user to turn off the light emittingdiodes 1202, identify that the user is wearing night vision goggles, orselect a brightness auto adjustment mode that automatically selects aresistor path so as to adjust the brightness of the LEDs 1202 based onan ambient light detected by the light sensor 1216.

In some embodiments, the display circuit 1200 may support pulse widthmodulation (PWM). In some such embodiments, the controller 1212 mayinclude a pulse width modulation (PWM) controller 1218. PWM may be usedto set or adjust a duty cycle for the power supplied to the LEDs 1202.In other words, instead of supplying power from the battery 1210 to theLEDs 1202 at a constant level, the PWM controller 1218 can alternatebetween supplying power and not supplying power to the LEDs 1202. Forexample, when the display controlled by the display circuit 1202 isactivated or turned on, the PWM controller 1218 can alternate equallybetween supplying and not supplying power to the LEDs 1202 (e.g., 50%duty cycle) for a repeating set of time periods (e.g., a set of clockcycles). As another example, the PWM controller 1218 may supply power75% of the time (e.g., 75% duty cycle) or 25% of the time (e.g., 25%duty cycle) for a repeating set of time periods (e.g., a set of clockcycles). Advantageously, in certain embodiments, by using PWM, greatercontrol over the brightness of the LEDs 1202 can be achieved. Further, agreater variety of brightness levels can be achieved. Thus, the LEDs1202 can be made bright or dim based on the amount of sunlight. Further,the LEDs 1202 can be dimmed to very low levels when the user is wearingnight vision goggles. In some embodiments, the LEDs 1202 may be dimmedto a level not visible to the human eye, but that is visible to a userwearing night vision goggles. In certain embodiments, the PWM controller1218 may implement PWM by adjusting the switch 1208 between an openposition (as illustrated in FIG. 12) and a closed position with the paththat includes the larger resistor 1206 (when in night vision mode) orthe smaller resistor 1204 (when not in night vision mode).

In some embodiments, the display circuit 1200 may include a controllerfor controlling an augmented reality display. In some embodiments, theoutput of the display may be projected onto a scope generating anaugmented reality display interface. In other embodiments, the augmentedreality display may be output via another display of the user, such asvia the user's goggles or night vision helmet.

In certain embodiments, the magazine may include an accelerometer, agyroscope, and/or other types of motion sensors that can detect when auser has picked up the magazine or when the magazine is in motion. Whenit is determined that the magazine is in motion, the magazine circuitrycan be transitioned from an off-state to an on-state or from asleep-mode to an on-state. Transitioning to an on-state may includeturning on a processor of the magazine to enable a determination ofcartridge count within the magazine. However, in certain embodiments,the display 124 of LEDs 1202 remain unpowered to prevent the emission oflight at an undesired time.

Example Weapon System

FIG. 13 illustrates an embodiment of a weapon 1300 with the magazine 100inserted. FIG. 14 illustrates a modified view of the embodiment of theweapon of FIG. 13. Referring to FIG. 13, the weapon may optionallyinclude a scope 1302 and/or a rail mounted display 1304. In certainembodiments, the scope 1302 and/or display 1304 may present a user withsome or all of the information that can be displayed on the display 124.Further, in some cases, the scope 1302 and/or display 1304 may displayadditional and/or complementary information from what is displayed onthe display 124 and/or another display. For example, the display 124 maydisplay the amount of cartridges within the magazine 100, the scope 1302may display the amount of cartridges within the loaded magazine and thenumber of magazines available to the user, and the display 1304 maydisplay the number of shots fired.

Electronics for controlling the additional displays, such as the scope1302 and the display 1304 may be located within the handle of the weapon1300. The handle may include a control 1306 for activating ordeactivating electronics included in the weapon 1300. Further, thecontrol 1306 may be used to cycle between different display optionsincluding the data to display and the display sources (e.g., the scope1302 or the display 1304). In some cases, the control 1306 may alsocontrol the display 124 of the magazine 100.

To display data and to control the various display sources, the weapon1300 may include one or more optical transceivers, similar to theoptical transceiver 116 of the magazine 100. Cables or wires may be usedto communicate between the electronics within the handle of the weapon1300 and various connection points in the weapon 1300 that enablesaccessories connected to the weapon 1300 to serve as display devices.For example, a cable may connect the electronics to an opticaltransceiver that communicates with a transceiver on the scope 1302.

FIG. 15 illustrates a line drawing of the embodiment of the weapon ofFIG. 13 without the inserted magazine. FIG. 16 illustrates a linedrawing of the embodiment of the weapon of FIG. 13 and an un-insertedmagazine. As can be seen with respect to FIG. 16, the weapon includes alip 1602 that extends from the insertion port 1604 where the magazine100 is inserted into the weapon 1300. The lip 1602 and the magazine 100may be designed to align the optical transceiver 116 of the magazine 100and an optical transceiver that may be included in the lip 1602 of theweapon 1300. The mating of the optical transceiver 116 and thetransceiver in the lip 1602 of the weapon 1300 can be seen in FIG. 17,which illustrates an embodiment of the weapon handle of the weapon 1300and the magazine 100. In some embodiments, the optical transceiver 116may be configured to communicate using infrared communications.Alternatively, or in addition, the optical transceiver 160 may beconfigured to communicate using other optical or frequency communicationbands.

In certain embodiments, as previously described with respect to theoptical transceiver 116, the transceiver included in the lip 1602 may bea contactless transceiver. Further, in some implementations of theweapon 1300, the transceiver included in the lip 1602 may be anon-optical transceiver, such as a near field communications (NFC)reader.

In some embodiments, the weapon 1300 may further include an opticalscanner that can scan or otherwise access a machine-readable codeincluded on the magazine 100. The weapon 1300 can register one or moremagazines by scanning the machine-readable code included on eachmagazine. Alternatively, the weapon 1300 can access an RFID tag on themagazine to register the magazine. Once the magazine has been registeredwith the weapon 1300, the weapon 1300 can monitor the status of themagazine, such as whether the magazine has been inserted into theweapon, whether the magazine is empty, or the number of cartridgesincluded in the magazine. In some cases, the weapon 1300 may usenear-field communication, Bluetooth™, Wi-Fi™, or any other type ofcommunication to communicate with one or more magazines within aparticular distance of the weapon 1300.

In some embodiments, the weapon 1300 can receive one or more statussignals from one or more magazines registered with the weapon.Advantageously, in certain embodiments, the weapon 1300 can aggregatethe information received in the status signals to determine a status ofa user's total ammunition. For example, the weapon 1300 can determineand present to the user a total quantity of ammunition available to theuser, the total number of magazines available to the user, the number ofloaded and/or empty magazines in the user's gear, etc.

FIG. 18 illustrates an embodiment of the ammunition status display 1304attached to a rail 1802 of the weapon 1300. FIG. 19 illustrates anembodiment of the ammunition status display 1304 separate from theweapon 1300. It should be understood that the display 1304 may beattached to other locations of the weapon 1300. The display 1304 mayinclude a number of controls 1804 and 1806 for configuring the data thatis presented on the display 1304. For example, the display 1304 maypresent a count of shots fired, a count of ammunition available, and/ora count of ammunition within a loaded magazine. Further, the display1304 may include circuitry for detecting when shots have been fired. Forexample, the display 1304 may include circuitry for detecting vibrationswithin the barrel 1808 of the weapon 1300 and/or audio from a bulletbeing fired. Using the detected vibrations and/or audio, the display1304 can count shots fired.

Example Weapon Internals

FIG. 20 illustrates a cross-section of an embodiment of the weapon 1300with the magazine 100 installed. FIG. 21 illustrates a line drawing ofthe cross-section of the embodiment of the weapon of FIG. 20 with themagazine installed. Referring to FIG. 20, as illustrated, the handle2000 may include electronic circuitry 2002 that can process datareceived from the magazine 100. This electronic circuitry 2002 may bepowered by a battery 2004 that can be installed in the handle. Incertain embodiments, the battery 2004 may also power the electroniccircuitry included in the magazine 100. In some such embodiments, thebattery 126 of the magazine 100 may be optional or omitted. In otherembodiments, the battery 2004 may be used to charge the battery 126and/or vice versa. The battery within the weapon used to power theelectronic circuitry 2002 may be of the same type as the battery in themagazine 100. In other cases, the battery used for the weapon may differfrom the battery used for the magazine 100.

In addition to processing data relating to the amount of cartridgeswithin the magazine 100, the electronic circuitry 2002 can track anumber of magazines available to a user; the status of the magazines,such as cartridges per magazine, empty or full status, etc.; the numberof rounds fired since a particular time, such as per day, during aparticular mission, since manufactured, etc.; and the position of a bolt2010 within a buffer tube 2012. In some embodiments, the electroniccircuitry 2002 may include a transmitter for transmitting some or all ofthe data to a display that is separate from the weapon 1300. Forexample, the data may be transmitted to a heads up display (HUD) withina helmet or goggles of a user. In some embodiments, data may betransmitted to a command center enabling a commanding officer to monitorammunition count of soldiers, or other users, in the field or during amission.

In certain embodiments, electronic circuitry 2002 of the weapon may beconfigured to determine a number of shots fired by the weapon. Theelectronic circuitry 2002 may determine the number of shots fired bytracking a change in the cartridges available to the user. For example,if it is determined that a magazine has 12 cartridges at the first pointin time and at a second point in time it is determined that the magazinehas 5 cartridges, the electronic circuitry 2002 may determine that sevencartridges have been fired by the weapon. However, if electroniccircuitry 2002 determines a change in the cartridges available in amagazine that is not inserted into the weapon, the electronic circuitry2002 may determine that a user has added or removed cartridges withoutfiring the cartridges from the weapon. Similarly, if electroniccircuitry 2002 determines that the magazine is no longer registered tothe weapon, the total count of cartridges available to the user may bereduced without increasing a shot count for the weapon. In someembodiments, the electronic circuitry 2002 may determine the number ofshots fired based at least in part on the number of measured movementsof a bolt in the weapon. The bolt may include a cylinder, a rod, orother movable portion of the weapon located within a buffer tube. Incertain embodiments, the movement of the bolt can be used to open orclose the chamber of the weapon. Further, movement of the bolt mayfacilitate loading a cartridge into a chamber and/or expelling a spentcartridge from the chamber or the weapon. If the bolt is moved, but atrigger is not pulled, electronic circuitry 2002 may determine that ashot was not fired despite movement of the bolt. Similarly, if the boltis moved, but a magazine has not been inserted into the weapon or amagazine inserted into the weapon has no cartridges, the electroniccircuitry 2002 may determine that a shot was not fired despite movementof the bolt.

In some embodiments, the electronic circuitry 2002 may be configured tocommunicate with different magazines to obtain a total count ofmagazines registered with the weapon. The electronic circuitry 2002 mayinclude a wireless transceiver to communicate with the magazinesregistered with the weapon. This wireless transceiver may useultra-wideband communications to reduce the possibility of interferenceby other systems or users and/or to reduce the possibility that thecommunications are captured by other systems or users. In someembodiments, the communication may be encrypted or use a secure channel.Further, communication between the weapon and systems of another user ora command center may be encrypted. Thus, in some instances, electroniccircuitry 2002 of the weapon of one user may use encrypted ultra-wideband communication to communicate with a system of another user or acomputing system at a command center.

In some implementations of the magazine 100, data may be transmittedfrom the magazine 100 to a display that is separate from the magazine100 and the weapon 1300. For example, as described above with respect tothe handle electronics 2002, data from the magazine 100 may betransmitted to a HUD in a helmet or eyewear.

As previously described, the magazine 100 and/or weapon 1300 can trackammunition within the magazine 100. Further, the electronic circuitry2002 can determine whether a cartridge or bullet is loaded into achamber 2014 of the weapon 1300. The weapon 1300 may include a magnet2016 positioned within the buffer tube 2012. Further, the weapon 1300may include one or more Hall effect sensors 2018 within the buffer tube2012. The Hall effect sensors 2018 can be used to determine a locationof the magnet 2016 within the buffer tube 2012. Using the location ofthe magnet 2016, the electronic circuitry 2002 can determine whether acartridge has been loaded into the chamber 2014. Similar to theelectronic circuitry 122, the electronic circuitry 2002 may include ahardware processor, or programmable hardware, and may be configured toperform one or more of the processes described herein.

In some cases, a user may insert a magazine 100 that includes thefeatures disclosed herein for determining a cartridge count into atraditional weapon that does not include the features disclosed herein.Although the magazine 100 can still determine the cartridge count in themagazine, the weapon may be unable to communicate whether a cartridge isloaded into the buffer tube. To prevent a user from obtaining a falsereading of the cartridge count within the weapon (e.g., the cartridgesin the magazine combined with the cartridge, if any, in the buffertube), a button or other deactivation trigger may be positioned on themagazine 100. When the magazine 100 is inserted into a weapon that doesnot include the capability of detecting a cartridge in the buffer tube,the button or other deactivation trigger may be activated causing theelectronics of the magazine 100 to be deactivated. This button may bepositioned such that when the magazine 100 is inserted into the weapon,a portion of the weapon presses against the button. For example, thebutton may be positioned near the top of the magazine such that thebutton is inserted within the weapon along with the magazine and ispressed against an inner surface of the insertion port of the weapon.

Accordingly, a user will not obtain a cartridge count of cartridgeswithin the weapon. To determine the number of cartridges within themagazine, a user can eject the magazine 100 and reactivate the circuitryto determine the cartridge count within the magazine 100. The circuitrymay automatically be reactivated when the magazine is ejected as thebutton, or other deactivation trigger, will no longer be in contact withthe weapon.

A weapon configured to detect a cartridge in a chamber may be configuredto not press against the button of the magazine thereby preventing thecartridge count circuitry from being deactivate. For example, theinsertion port may include a gap or notch that prevents the button onthe magazine from being depressed. As an alternative, the circuitry ofthe weapon may communicate its functionality to the circuitry of themagazine. Upon receipt of a message form the weapon that it is capableof detecting a cartridge in the chamber, the magazine may activate itscartridge counting capabilities. In some embodiments, the controlinterface of the magazine can be positioned on a portion of the magazinethat is inaccessible to the user when the magazine is inserted into thefirearm.

In some embodiments, the electronic circuitry 2002 may track a number oftimes a weapon has been fired. Accordingly, the electronic circuitry2002 may provide maintenance information to a user or maintenancewarnings alerting the user when one or more portions of the weaponshould be serviced. In some cases, the electronic circuitry 2002 maytrack a number of times a weapon is by an fired since the weapon, or aportion thereof, was last serviced.

The electronic circuitry 2002 may be capable of processing auxiliarydata received from auxiliary sources and/or output to auxiliary systems.For example, the weapon 1300 may include a receiver or transceiver thatcan receive information from a range finder or a global positioningsystem (e.g., GPS). This information may be provided on a display, suchas one integrated with a scope of the weapon. Thus, a user can view thecartridges available to the user in one or more magazines, a position ofthe user within a geographic area, and a distance to a target.Advantageously, by displaying the auxiliary information on a scope ofthe weapon, a user can obtain or view the information without removinghis or her focus from a potential target. In another example, the weapon1300 may communicate information obtained by the weapon 1300 ordetermined by the electronic circuitry 2002 to a radio of the user fortransmission to another user, such as a unit leader or commander. Forinstance, an ammunition count may be communicated over the radio to auser.

FIG. 22 illustrates a line drawing of a cross-section of an embodimentof the handle 2000 and magazine 100 inserted into the weapon 1300. FIG.23 illustrates a line drawing of another perspective of thecross-section of the embodiment of the handle and magazine inserted intothe weapon of FIG. 22. With reference to FIG. 22, the handle 2000 canfurther include a cap 2202 that can be opened to replace the batteries2004 that power the electronic circuit 2002. Further, the handle 2000may include optical connections 2204 that communicate data to one ormore optical transceivers that provide the data to one or more displays(e.g., the display 1304 or scope 1302) for display to a user.

FIG. 23 illustrates a line drawing of another perspective of thecross-section of the embodiment of the handle and magazine inserted intothe weapon of FIG. 22. FIG. 23 further illustrates the alignment of theoptical transceiver 116 of the magazine 100 and the optical transceiver2302 located in the lip 1602 of the weapon 1300. As illustrated by theline drawing, when inserted into the weapon 1300, the magazine 100 isaligned such that the optical transceiver 116 aligns with the opticaltransceiver 2302. Further, the spacing between the magazine 100 and theweapon 1300 may be sufficiently small to prevent ambient light frominterfering with the optical connection.

FIG. 24A illustrates an embodiment of a non-contact optical connector2302 included in the lip 1602 of the insertion point for inserting amagazine 100 into the weapon 1300. This non-contact optical connector2302 can function as a transceiver for receiving data from a magazine100 when the magazine 100 is inserted into the weapon 1300. Althoughtypically the optical transceiver 116 transmits data and the opticaltransceiver 2302 receives data, in some embodiments, the opticaltransceiver 116 may also receive data and/or the optical transceiver2302 may also transmit data. Advantageously, in certain embodiments, byenabling the weapon 1300 to transmit data to the magazine 100, thedisplay 124 of the magazine 100 can display data gathered by the weapon1300, such as shot count or total magazines available.

In certain embodiments, it is desirable to confirm whether the magazine100 is inserted into the weapon 1300. For example, a differentcalibration table for a linear encoder may be used when the magazine isinserted into the weapon 1300. In some cases, the magazine 100 candetermine it is positioned within the weapon 1300 by communicating viathe optical transceiver. But in some cases, the magazine 100 may not beable to communicate using the optical transceiver because, for example,the weapon is deactivated or the battery within the weapon 1300 isuncharged or dead. One method of determining whether the magazine isinserted into the weapon 1300 is to use a magnetic sensor, such as aHall effect sensor that can detect when it is within a thresholddistance of a magnet positioned within the insertion port of the weapon1300 or at a location that is within a threshold distance of themagazine 100 when the magazine 100 is inserted into the insertion portof the weapon 1300.

FIG. 24B illustrates a portion of the magazine 100 with a transceiver116 and a magnetic sensor 2410. The magnetic sensor 2410 may be a Halleffect sensor. Because the magnetic sensor 2410 is collocated with thetransceiver 116, the magnetic sensor 2410 may be aligned with acorresponding transceiver 2302 when the magazine 100 is inserted into aweapon 1300.

FIG. 24C illustrates a portion of the weapon 1300 with a transceiver2302 and a magnet 2420. Because the magnet 2420 is collocated with thetransceiver 2302, the magnet 2420 may be aligned with the magneticsensor 2410 and the transceiver 116 when the magazine 100 is insertedinto the weapon 1300. Thus, the magazine 100 can determine from a signalgenerated by the magnetic sensor 2420 when the magazine is inserted intothe weapon 1300. The magazine 100 can then determine whether to load acalibration table associated with an inserted magazine or a calibrationtable associated with an uninserted magazine when determining anammunition count.

Further, as the magnetic sensor 2410 is located at the rear 2425 of themagazine 100, while the magnetic sensors 112 of the linear encoder andmagnet 110 are located near the front edge 402 of the magazine, themagnetic field generated by the magnet 110 will not be detected, or willnot generate a strong enough signal in the magnetic sensor 2410 to causean incorrect determination of insertion status. Similarly, as the magnet2420 in the weapon 1300 is located adjacent to the rear of the magazinewhen the magazine is inserted into the weapon, the magnetic fieldgenerated by the magnet 2420 will not be detected by the sensors 112 orwill not generate a strong enough signal in the magnetic sensors 112 tocause an incorrect determination of ammunition count.

FIG. 25 illustrates an embodiment of a buffer tube 2012 within a weapon1300. As previously described, the buffer tube may have a set or seriesof Hall effect sensors 2018. In certain embodiments, the Hall effectsensors 2018 may be supplemented and/or replaced by other types ofsensors, such as optical sensors. Using the Hall effect, the sensors2018 can detect the motion or action of a bolt 2010 based on themovement of a magnet 2016 attached to the bolt 2010. Based on theposition of the bolt 2010, a hardware processor included, for example,in the handle of the weapon, can determine whether a cartridge has beenloaded into a chamber of the weapon. Thus, advantageously, the weaponcan determine the total ammunition count within the weapon based on asummation of the ammunition in a magazine loaded into the weapon and theamount of cartridges within the chamber of the weapon. Although thenumber of cartridges within a chamber of the weapon is typically 0 or 1,embodiments disclosed herein can be adapted for use with weapons thatmay load multiple cartridges into a chamber or multiple chambers of theweapon, such as with a combination gun that has chambers configured toload different types of ammunition (e.g., a combination shotgun andrifle). In some embodiments, the movement of the bolt 2010 can bedetected based on principles other than the Hall effect. For example, ifthe sensors 2018 are light sensors, the movement of the bolt 2010 can bedetected based on the change of light around the sensors 2018. Thislight may filter in via the barrel of the weapon and/or the chamber.Alternatively, or in addition, the light may be based on a light source(e.g., an LED) attached to the bolt 2010.

FIG. 26 illustrates a line drawing of an embodiment of a buffer tube2012 and stock 2602 of a weapon 1300. As illustrated, the stock 2602 maybe at least partially hollow allowing for the buffer tube 2012 to extendinto the stock 2602 and providing room for the bolt 2010 to move intothe stock 2602. In some embodiments, the bolt 2010 may be extendedcompared to other bolts to enable the bolt to travel through theextended buffer tube. Advantageously, by extending the buffer tube 2012into the stock 2602, additional space may exist in the weapon 1300compared to weapons that use a solid stock. This additional room may beused to insert the sensors 2018. Further, using a hollow stock enablesthe weapon 1300 to maintain its weight despite the addition of themagnet, sensors, electronic circuitry, and/or batteries. It should beunderstood that in certain embodiments, the weapon 1300 can implementfeatures of the present disclosure without modification to the stock ofthe weapon. For example, the sensors may be positioned between thechamber and the stock.

Example Use Case

FIG. 27 illustrates an example use case of certain embodiments describedherein. In this non-limiting example use case, a soldier is approachingenemy combatants on a bridge. The soldier may consider engaging theenemy combatants, but does not wish to engage without a minimum quantityof ammunition loaded in the soldier's weapon. To ensure a minimumammunition quantity in the weapon, the soldier could replace themagazine with a new magazine. However, this could result the soldiercarrying a number of partially filled magazines without knowing how muchammunition is available in total to the soldier.

Alternatively, using embodiments disclosed herein, the user can look ata display, such as via the scope and see the total ammunition countwithin the weapon including the magazine and chamber of the weapon(e.g., 30 cartridges in the illustrated example). Further, the soldiercan be presented with a total ammunition count available to the soldiervia additional magazines the soldier is carrying (e.g., 175 cartridgesin the illustrated example). Alternatively, the numbers illustrated viathe display in the scope may represent the cartridges available in theweapon out of the total capacity of the magazine.

As illustrated in FIG. 27, the information presented to the soldier ispresented in as part of a HUD and/or augmented reality displayobservable through a scope on the weapon. Thus, when the soldier looksthrough the scope, the soldier can see the targets in front of theweapon, and also see information provided by the weapon to the scoperegarding the cartridges available to the user in, for example, theloaded magazine.

The use case presented in FIG. 27 is one non-limiting example use case.Other uses cases are possible. For example, a police force can useembodiments disclosed herein to monitor the ammunition available to itsofficers. Further, a hunter could use embodiments disclosed herein tomonitor the ammunition available during a hunt.

Moreover, in certain embodiments, the weapon can include a transmitterfor transmitting ammunition information to a command post or otherlocation monitored by users (e.g., commanders) associated with thecarrier of the weapon. Alternatively, or in addition, the weapon maycommunicate with another system of the user, such as the user's helmet,which may communicate the ammunition information to the command post.Advantageously, the ability to monitor ammunition at a command post orother location enables a user, such as a commander or police captain, tomonitor the ammunition of a user (e.g., a solider or policeman) todetermine whether reinforcements are needed, additional ammunition isneeded, or if an unexpected firefight is occurring. For instance, apolice captain can determine if a traffic officer has fired his weaponby receiving an alert that an amount of ammunition carried by an officerhas changed. As another example, a field commander can determine thatsoldiers have been ambushed while guarding supplies based on anunexpected change in ammunition.

Example Ammunition Count Determination Process

FIG. 28 presents a flowchart of an embodiment of an ammunition countdetermination process 2800. The process 2800 can be implemented by anysystem that can determine a count of the number of cartridges within amagazine. For example, the process 2800, in whole or in part, can beimplemented by electronic circuitry included in the magazine, such asthe electronic circuitry 122 included in the magazine 100. Thiselectronic circuitry 122 can include hardware, such as a hardwareprocessor, that can perform the process 2800. In some embodiments, theelectronic circuitry 122 includes application-specific hardwareconfigured to perform the process 2800. In other embodiments, thehardware may include a computer processor programmed with specialinstructions configured to perform the process 2800. Further, theelectronic circuitry 122 may include control circuitry for controllingone or more of the magnet 110 and/or the sensors 112. In someembodiments, some or all of the process 2800 may be performed byelectronic circuitry in the weapon, such as the electronic circuitry2002. The electronic circuitry 2002 may include some or all of theembodiments of the electronic circuitry 122. To simplify discussion andnot to limit the disclosure, portions of the process 2800 will bedescribed with respect to particular systems, such as the electroniccircuitry 122 or 2002. However, it should be understood that operationsof the process 2800 may be performed by other systems. For example,operations described as being performed by the electronic circuitry 122may alternatively be performed by the electronic circuitry 2002.

The process 2800 begins at block 2802 wherein, for example, theelectronic circuitry 122 generates a magnetic field within a magazine100 using a first magnet 110. In certain embodiments generating themagnetic field may include producing an electric current in a wire thatsurrounds the magnet, such as with an electromagnet. In otherembodiments, the magnetic field is generated by the magnet 110. In somesuch cases, the electronic circuitry 122 may not be involved ingenerating the magnetic field. However, electronic circuitry 122 may beinvolved in determining the strength of the magnetic field.

Using a first set of sensors 112 within the magazine 100, the electroniccircuitry 122 at block 2804 detects a location of the magnet 110 basedat least in part on the magnetic field measured by the set of sensors112. In certain embodiments, the location of the magnet 110 isdetermined based on the particular sensor from the set of sensors thatdetects the magnetic field of the magnet 110. In other embodiments, thelocation of the magnet 110 is determined based on the strength of themagnetic field as detected by a plurality of the sensors 112.

At block 2806, the electronic circuitry 122 determines a number ofcartridges within the magazine 100 based at least in part on thelocation of the first magnet as determined at the block 2804. Forexample, if it is determined that the location of the first magnet 110is at a particular location, the electronic circuitry 122 can determinethat there are a particular number of cartridges within the magazine 100based on a correspondence between the locations of the magnet 110 withinthe magazine 100 and the quantity of cartridges remaining within themagazine 100.

In some embodiments, the electronic circuitry 122 may access a number oftables stored in a memory of the electronic circuitry 122 that identifya corresponding between one or more signals generated by sensorsincluded in the magazine 100 and the number of cartridges loaded in themagazine 100. In some embodiments, the electronic circuitry 122 mayperform an interpolation process to determine a position of a magnetwithin the magazine 100 based on a plurality of signals received fromsensors of the magazine 100.

At block 2808, the electronic circuitry 2002 generates a magnetic fieldwithin a buffer 2012 of a weapon 1300 using a second magnet 2016. Incertain embodiments, the block 2808 may include one or more of theembodiments described with respect to the block 2802.

Using a second set of sensors 2018 within the buffer 2012, theelectronic circuitry 2002 at block 2810 detects a location of the secondmagnet 2016 based at least in part on the magnetic field generated atblock 2808. In certain embodiments, the block 2810 may include one ormore of the embodiments described with respect to the block 2804.

At block 2812, electronic circuitry 2002 determines whether a cartridgeis within a chamber 2014 of the weapon 1300 based at least in part onthe location of the second magnet 2016. Determining whether a cartridgeis within the chamber 2014 may include determining whether a bolt 2010has fully cycled or is within a particular position as determined basedat least in part on the position of the magnet 2016 within the buffertube 2012 and/or the stock 2602. In certain embodiments, the block 2812may include one or more of the embodiments described with respect to theblock 2806. In certain embodiments, the number of cartridges within themagazine and/or whether a cartridge exists within a chamber of theweapon may be output on a display on the magazine, on the weapon, onanother device of a user of the weapon, or on a device in anotherlocation, such as a command station. In some embodiments, the count ofammunition or cartridges in the weapon may be displayed using theexample process 2900 described below with respect to FIG. 29.

In certain embodiments, one or more of the blocks 2808 through 2812 maybe optional or omitted. For example, in some embodiments, the number ofcartridges within the magazine may be determined without the magazinebeing inserted into a weapon.

Example Ammunition Count Display Process

FIG. 29 presents a flowchart of an embodiment of an ammunition countdisplay process 2900. The process 2900 can be implemented by any systemthat can display a count of the number of cartridges within a weaponincluding a chamber of the weapon and a magazine inserted into theweapon. For example, the process 2900, in whole or in part, can beimplemented by electronic circuitry included in the magazine 100, suchas the electronic circuitry 122, and/or electronic circuitry in theweapon 1300, such as the electronic circuitry 2002. To simplifydiscussion and not to limit the disclosure, portions of the process 2800will be described with respect to particular systems, such as theelectronic circuitry 122 or 2002. However, it should be understood thatoperations of the process 2800 may be performed by other systems. Forexample, operations described as being performed by the electroniccircuitry 122 may alternatively be performed by the electronic circuitry2002 and vice versa.

The process 2900 begins at block 2902 wherein, for example, theelectronic circuitry 2002 determines a magazine insertion status.Determining the magazine insertion status may include detecting whethera signal is received at the optical receiver 2302 of the weapon 1300. Atblock 2904, a display of the weapon 1300, such as the display 1304,displays the magazine insertion status.

At decision block 2906, electronic circuitry 2002 determines whether thebolt 2010 is open. Determining whether the bolt 2010 is open may includedetermining the position of the magnet 2016 as described with respect tothe process 2800. If it is determined at decision block 2906 that thebolt 2010 is open, electronic circuitry 2002 determines that the chamber2014 is empty and may set a chamber counter corresponding to whether acartridge exists within the chamber 2014 to 0. At block 2910, electroniccircuitry 2002 determines a weapon count, or a count of the cartridgeswithin the weapon 1300. In some cases, determining a count of thecartridges within the weapon 1300 includes determining a number ofcartridges within a magazine inserted into the weapon 1300. Thus, thecount of cartridges within the weapon, or the weapon count, may includethe number of cartridges within the chamber 2014 and the number ofcartridges within a magazine 100, when inserted into the weapon 1300. Incases where no magazine is inserted into the weapon, the weapon countwill be equal to the number of cartridges, if any, within the chamber2014.

At block 2912, a display, such as a HUD display of a scope 1302,displays the total count of cartridges within the weapon 1300. The countof cartridges within the weapon 1300 may be displayed for a particularperiod of time or until there is a change in a count of cartridges, suchas by a removal or insertion of a magazine or the firing of the weapon.Alternatively, or in addition, the count of cartridges may be displayedin response to an interaction by a user with a user interface, such as auser pressing a button on the weapon or on the display device. In somecases, the count of cartridges may be displayed on multiple displays,such as on a display attached to the rail of the weapon, a displayintegrated into the magazine, and/or a display generated in the scope1302. Upon completion of, or in parallel with, operations associatedwith the block 2912, the process 2900 may return to the block 2902. Insome embodiments, the process 2900 advances from the block 2912 to theblock 2902 in response to detecting a change in the status of theweapon, such as the removal or addition of a magazine, a firing of acartridge, or a detection of a change in the position of the bolt 2010.

If it is determined at the decision block 2906 that the bolt 2010 is notopen, electronic circuitry 2002 determines at the decision block 2914whether the bolt 2010 has completely cycled. In some cases, when thebolt is completely cycled, a cartridge is inserted into the chamber2014. In certain embodiments, the decision block 2914 may also includedetermining whether a magazine is inserted into the weapon. Determiningwhether the bolt has completely cycled includes determining a positionof the magnet 2016 within a buffer tube 2012 as previously describedwith respect to the process 2800.

If it is determined at the decision block 2914 that the bolt is notcompletely cycled, a display of the weapon 1300, such as the scope 1302,displays a message or indicator corresponding to an unknown state atblock 2916. At block 2918, electronic circuitry 2002 waits until itdetects that the bolt is charged, or completely cycled indicating thatcartridge may have been loaded into the chamber 2014. In someembodiments, if the bolt does not completely cycle for a thresholdperiod of time, it may be determined that the weapon is jammed. If it isdetermined that the weapon is jammed, a display of the weapon, or otherdisplay in communication with the weapon, such as an augmented realitydisplay of a user's helmet, may output a weapon jammed indicator.

At decision block 2920, electronic circuitry 2002 determines whether themagazine count has been reduced by 1. The magazine count corresponds tothe number of cartridges within the magazine 100. In some embodiments,the decision block 2920 may include determining whether the magazinecount has been reduced by some value other than one. If it is determinedthat the magazine count has not been reduced by one, the process 2900returns to the decision block 2906.

If it is determined at the decision block 2920 that the magazine counthas been reduced by one or if it is determined at the decision block2914 that the bolt has completely cycled, the process 2900 proceeds tothe decision block 2922. At decision block 2922, electronic circuitry2002 determines whether the magazine count is less than zero. If it isdetermined that the magazine count is less than zero, indicatingnegative cartridges within the magazine, then the process 2900 proceedsto the block 2916 where a message or indicator corresponding to anunknown state is displayed.

In some embodiments, an unknown state indicator may be triggered inother circumstances. For example, when an error occurs in the electroniccircuitry 2002 or if a conventional magazine is inserted into the weaponthat does not include the features disclosed herein, an unknown stateflag may be set and displayed to the user. In some embodiments, if aconventional magazine is inserted into the weapon, a display of theweapon may indicate that the magazine does not support the cartridgecounting features, or other features, disclosed herein.

If it is determined that the decision block 2922 that the magazine countis not less than zero, and the process 2900 proceeds to the block 2924where the chamber count is set to one. At block 2926, the electroniccircuitry 2002 determines the weapon count indicating the number ofcartridges within the weapon 1300. In certain embodiments, the block2926 can include one or more of the embodiments of the block 2910. Atblock 2928 a display of the weapon 1300 displays the weapon count or thenumber of cartridges within the weapon 1300 inclusive of both thechamber and a magazine, if any, installed within the weapon 1300. Incertain embodiments, the block 2928 can include one or more embodimentsof the block 2912.

Example Magazine Calibration Process

FIG. 30 presents a flowchart of an embodiment of a magazine calibrationprocess 3000. The process 3000 can be implemented by any system that cancalibrate an ammunition count system of a magazine. For example, theprocess 3000, in whole or in part, can be implemented by electroniccircuitry included in the magazine 100, such as the electronic circuitry122, and/or electronic circuitry in the weapon 1300, such as theelectronic circuitry 2002. To simplify discussion and not to limit thedisclosure, portions of the process 3000 will be described with respectto particular systems, such as the electronic circuitry 122 or 2002.However, it should be understood that operations of the process 3000 maybe performed by other systems. For example, one or more operations ofthe process 3000 may be performed by a computing device that isconfigured to communicate with the magazine 100.

In some embodiments, the process 3000 is performed by a manufacturer ofthe magazine 100. The process may be an automated process performed aspart of the process of manufacturing the magazine 100. Alternatively,the process 3000 may be performed in whole or in part by a usercalibrating the magazine 100 prior to sale or distribution, or by a userthat has purchased or otherwise obtained the magazine 100. For example,a user can instruct the magazine 100 to enter a calibration mode beforeperforming a calibration process 3000. In some embodiments, thecalibration process 3000 can be repeated for a magazine. Repeating theprocess 3000 can improve the calibration if the magazine 100 has becomeworn and/or if a different type of ammunition is loaded into themagazine. Thus, in some embodiments, some or all of the operations ofthe calibration process 3000 can be used as a recalibration processand/or be used in place of some or all of the operations of the process3200 described with reference to FIG. 32.

The process 3000 begins at block 3002 where a maximum number ofcartridges is inserted into a magazine. The maximum number of cartridgesmay be the maximum number of cartridges that the magazine is designed orconfigured to hold. In some embodiments the maximum number of cartridgesmay differ based on the manufacturer of the cartridges or the type ofcartridges. The insertion of the cartridges into the magazine may beperformed by an automatic magazine loader or other automated machine.Further, the loading of the cartridges into the magazine may beperformed as part of the manufacturing process for the magazine. In someembodiments, the cartridges may be manually loaded into the magazine.

At block 3004, a linear encoder position corresponding to the number ofcartridges in the magazine is recorded in a calibration table. Thelinear encoder position may be determined from one or more signalsreceived from one or more magnetic sensors, such as Hall effect sensors112, by a hardware processor. This hardware processor may be includedwithin the electronic circuitry of the magazine, such as the circuitry122. Determining the linear encoder position may include determining aposition of a magnet, such as a magnet attached to a follower of themagazine. The detected position of the magnet, as determined by thesignals received from the one or more Hall effect sensors 112, isassociated with the number of cartridges inserted into the magazine. Therelationship between the linear encoder position, or the detectedposition of the magnet, and the number of cartridges in the magazine isstored in the calibration table. Thus, after loading the magazine with amaximum number of cartridges, the linear encoder position recorded atthe block 3004 is associated with the maximum number of cartridges canbe loaded into the magazine. In some embodiments, the operations of theblock 3004 may be performed one more time after determining that themagazine is empty in order to store a linear encoder position for whenthe magazine is empty.

At block 3006, a cartridge is removed from the magazine. The cartridgemay be removed from the magazine by an automated machine. For example, amachine used during the manufacturing process of the magazine may beused to add and/or remove cartridges from the magazine during themagazine calibration process 3000. Alternatively, in certainembodiments, the cartridge may manually be removed from the magazine.

At decision block 3008, it is determined whether the magazine is empty.In certain embodiments, a machine used during manufacturing of themagazine determines whether the magazine is empty. Alternatively, or inaddition, electronic circuitry of the magazine determines whether themagazine is empty based at least in part on a number of cartridges thathave been ejected from the magazine or a location of the linear encoder.In some embodiments, a user indicates that the magazine is empty.

If the magazine is not empty, the process returns to the block 3004where an updated linear encoder position corresponding to the updatednumber of cartridges in the magazine is recorded in the calibrationtable. The operations associated with the blocks 3004, 3006, and 3008may be repeated until it is determined that the magazine is empty.

If it is determined at the decision block 3008 that the magazine isempty, a maximum number of cartridges is inserted into the magazine atthe block 3010. The block 3010 may include one or more of theembodiments described with respect to the block 3002.

At block 3012, the magazine is inserted into a weapon. The magazine maybe inserted into a weapon as part of an automated manufacturing processfor the magazine. Alternatively, the magazine may be inserted into theweapon by a user.

At block 3014, a linear encoder position corresponding to the number ofcartridges in the magazine is recorded in the calibration table. Theblock 3014 may include one or more of the embodiments described withrespect to the block 3004. In some embodiments, the block 3014 mayinclude recording the linear encoder position in a different calibrationtable in the calibration table of the block 3004. Alternatively, thelinear encoder positions recorded at the block 3014 may be recorded in adifferent portion of the calibration table. In some embodiments, thelinear encoder positions recorded at the blocks 3004 and 3014 may bemarked or otherwise tagged to identify that the linear encoder positionsare associated, respectively, for the magazine not being inserted intothe weapon and with the magazine being inserted into the weapon.

At block 3018, a cartridge is removed from the magazine. Removing acartridge from the magazine may include cycling a bolt in the weapon toload a cartridge from the magazine into a chamber of the weapon and/orto expel a cartridge from a chamber of the weapon. In some embodiments,the magazine may be removed from the weapon, a cartridge may then beremoved from the magazine, and the magazine may be re-inserted into theweapon. In some such embodiments, the block 3018 may include one or moreof the embodiments previously described with respect to the block 3006.

At decision block 3020, it is determined whether the magazine is empty.The decision block 3020 may include one or more of the embodimentspreviously described with respect to the decision block 3008.

If the magazine is not empty, the process returns to the block 3014where a new linear encoder position is recorded in the calibration tablefor the current number of cartridges within the magazine. The operationsassociated with the blocks 3014, 3018, and 3020 may be repeated until itis determined that the magazine is empty.

If it is determined at the decision block 3020 that the magazine isempty, the calibration table is stored in a storage of the magazine atblock 3022. In some embodiments, the operations of the block 3014 may beperformed one more time after determining that the magazine is empty inorder to store a linear encoder position for when the magazine is empty.The storage of the magazine may be a non-volatile storage. Thecalibration table may be identified as a default or manufacturer defaultcalibration table in the non-volatile storage. In some embodiments, thecalibration table may be stored in a storage that is external orindependent of the magazine. For example, copies of the calibrationtable may be stored in a manufacturer database.

Advantageously, in certain embodiments, by recording linear encoderpositions for each load state of the magazine corresponding to thequantity of cartridges in the magazine, it is possible during use of themagazine to determine the number of cartridges within the magazine.Thus, a user can determine the number of cartridges within the magazinewithout manually counting the cartridges or keeping track of the numberof shots fired. Further, by generating calibration table for when themagazine is inserted into a weapon and when the magazine is not insertedinto a weapon, it is possible to more accurately track a number ofcartridges loaded within the magazine. Typically, different pressuresare applied to cartridges within the magazine when the magazine isloaded into the weapon compared to the when the magazine is not loadedinto the weapon. These different pressures may cause the cartridgeswithin the magazine to move. Thus, using the same calibration table orlinear encoder positions stored within the calibration table for whenthe magazine is both inserted and not inserted may lead to an inaccuratecount of cartridges loaded within the magazine. By separately recordingthe linear encoder positions for when the magazine is loaded into theweapon and when the magazine is not loaded into the weapon, a moreaccurate ammunition count can be determined for the magazine.

In some embodiments, the pressure on the cartridges in the magazinevaries based on a position of the bolt of the weapon. For example, whenthe bolt is drawn back into the buffer tube of the stock and the chamberis open, the pressure applied to the cartridges in the magazine insertedinto the weapon may differ from the pressure applied to the cartridgeswhen the bolt is pushed forward towards the barrel of the weapon andslides over the top cartridge, or cartridge closest to the feed point,of the magazine. In some embodiments, the pressure applied to thecartridges in the magazine when the magazine is not inserted into theweapon may be the same as the pressure applied to the cartridges whenthe magazine is inserted into the weapon, but the bolt is slid back, orthe chamber is open. The movement of the cartridges because of theadditional pressure that may be applied to the cartridges by the boltwhen it is slid forward over the cartridges in the magazine may be 1, 2,or 3 millimeters, or any range of values between the foregoingdistances. In some embodiments, the movement of the cartridges may bemore or less and may depend, for example, on how large the bolt isrelative to the buffer tube and/or the strength of the spring within themagazine. In certain embodiments, the process 3000 may include creatinga first calibration table for when the magazine is inserted into theweapon and the bolt is closed and a second calibration table for whenthe magazine is inserted into the weapon and the bolt is open. Thenumber of cartridges within the magazine may then be determined withreference to the first calibration table when the bolt is closed andwith reference to the second calibration table when the bolt is open. Insome cases, the second calibration table may also be used when themagazine is not inserted into the weapon. Alternatively, a thirdcalibration table may be used for determining a number of cartridges inthe magazine for when the magazine is not inserted into the weapon.

In certain embodiments, the block 3012 may include identifying theweapon that the magazine is loaded into. In some cases, differentweapons may have different impacts on the magazine and the relativeposition of the linear encoder for a particular number of cartridgesloaded within the magazine. Thus, in certain embodiments, differentcalibration tables may be generated for the magazine for differentweapons. In such cases, the process 3000, or parts thereof, may berepeated for different weapons and each calibration table generated foreach weapon may be stored separately along with an identifier of thetype of weapon in the storage or non-volatile memory of the magazine.

Further, in certain embodiments, a particular magazine may be capable ofsupporting different types of ammunition or the same type of ammunitionmanufactured by different manufacturers. In some such cases, thedifferent types of ammunition, or ammunition manufactured by differentmanufacturers, may differ in the impact on the position of the linearencoder when a particular number of cartridges are loaded in themagazine. In some such cases the process 3000 may be repeated for eachtype of ammunition that is capable of being loaded into the magazineand/or for each manufacturer's version of a particular type ofammunition. For example, a particular magazine may be capable of holding0.458 SOCOM, 0.223, 5.56, 0.50 Beowulf, or 6.5 Grendel ammunition.Because the size of the different types of ammunition may vary, theposition of the linear encoder for a particular number of cartridges inthe magazine may vary. Thus, in certain embodiments, the process 3000may be repeated for each type of ammunition capable of being loaded intoa particular magazine to create a calibration table, or other datastructure, for each type of supported ammunition type. The identity ofthe ammunition or manufacturer may be stored with the calibration tablecorresponding to the ammunition type or manufacturer.

Example Calibration Table Based Ammunition Count Process

FIG. 31 presents a flowchart of an embodiment of a calibration tablebased ammunition count process. The process 3100 can be implemented byany system that can determine an amount of ammunition in a magazine orin a weapon with the magazine inserted using a calibration table. Forexample, the process 3100, in whole or in part, can be implemented byelectronic circuitry included in the magazine 100, such as theelectronic circuitry 122, and/or electronic circuitry in the weapon1300, such as the electronic circuitry 2002. To simplify discussion andnot to limit the disclosure, portions of the process 3100 will bedescribed with respect to particular systems, such as the electroniccircuitry 122 or 2002. However, it should be understood that operationsof the process 3100 may be performed by other systems. For example, oneor more operations of the process 3100 may be performed by a computingdevice that is configured to communicate with the magazine 100.

The process 3100 begins at block 3102 where, for example, a hardwareprocessor included in the electronic circuitry 122 determines whether amagazine 100 is inserted into a weapon 1300. This hardware processor maybe a field programmable gate array (FPGA) processor, a general-purposeprocessor, an application specific integrated circuit (ASIC), amicrocontroller, a single board computer, or any other type of processoror computing device that may be used to determine the amount ofammunition in the magazine and/or in the weapon using a calibrationtable. The hardware processor may determine that the magazine isinserted into the weapon by communicating with electronic circuitry 2002within the weapon. Alternatively, or in addition, the hardware processorof the electronic circuitry 122 may determine that the magazine isinserted into the weapon 1300 based at least in part on pressuredetected on a pressure sensor of the magazine 100. In some embodiments,the hardware processor of the electronic circuitry 122 may determinethat the magazine is inserted into the weapon 1300 based at least inpart on one or more signals received from one or more magnetic sensorswithin the magazine 100. In some implementations the magazine determineswhether it is inserted into the weapon 1300 based on input from a user.

At block 3104, the hardware processor determines an ammunition type forcartridges or ammunition loaded into the magazine. Alternatively, or inaddition, a user may provide input that identifies an ammunition typefor cartridges or ammunition loaded into the magazine. Determining theammunition type may include determining a type of the ammunition loadedinto the magazine and/or the manufacturer of the ammunition loaded intothe magazine. In some cases, determining the ammunition type forcartridges loaded in the magazine may include determining the ammunitiontype for cartridges that are capable of being loaded into the magazine,but which may not currently be loaded into the magazine because, forexample, the magazine has yet to be loaded with ammunition or all of theammunition that was loaded into the magazine has been fired. In somecases, ammunition type is determined automatically by scanning a code,such as a quick response (QR) code or other type of machine-readablecode on a cartridge or on a box that included the cartridge. In someembodiments, the block 3104 is optional or omitted. For example, in someembodiments, the magazine 100 is capable of being loaded with only onetype of ammunition or variation between manufacturers of a particulartype of ammunition is sufficiently small enough to not impact theability of the hardware processor to count the number of cartridgeswithin the magazine.

At block 3106, the hardware processor selects a calibration table basedat least in part on the ammunition type and/or whether the magazine isinserted into the weapon. In some embodiments, the calibration table maybe selected based at least in part on whether the bolt of the weapon isopen or closed. The calibration table may be loaded from a non-volatilememory within the magazine 100 and/or within the weapon 1300. Thecalibration table may be selected from one or more calibration tablesgenerated for the magazine. In some embodiments, the magazine 100includes a single calibration table because, for example, the magazine100 supports being loaded by only a single type of ammunition or becausecalibration tables were only generated for a single type of ammunition.In cases where the magazine 100 can only be loaded by a single type ofammunition, the calibration table may be selected at the block 3106based on whether the magazine is inserted into the weapon. In someembodiments, the portion of the calibration table accessed may be basedon whether the magazine 100 is inserted into the weapon.

At block 3108, the hardware processor determines a linear encoderposition for a linear encoder of the magazine 100. Determining thelinear encoder position may include determining a position of a magnetattached to a follower of the magazine. In some embodiments, the magnetis not attached to the follower, but moves as the follower moves. Thefollower may move towards an entry or egress point of the magazine ascartridges are expelled from the magazine. Conversely, the follower maymove towards the base of the magazine as cartridges are loaded into themagazine. Thus, as cartridges are loaded or expelled from the magazine,a magnet or linear encoder position may change. In certain embodiments,the hardware processor determines the linear encoder position by mappingone or more signals received from one or more magnetic sensors to datastored in the calibration table. As the signals produced by the one ormore magnetic sensors vary based on a location of a magnet with respectto the magnetic sensors, the linear encoder position can be determinedbased on the signals received from the one or more magnetic sensors.

At block 3110, hardware processor uses the calibration table todetermine a count of the number of cartridges in the magazine based atleast in part a linear encoder position. Determining the count of thenumber of cartridges in the magazine may include comparing the linearencoder position to the calibration table to determine a number ofcartridges corresponding to the linear encoder position. In someembodiments, the hardware processor may use the linear encoder positionas an index for accessing the calibration table to determine a number ofcartridges associated with the linear encoder position. In someembodiments, the hardware processor may determine a range of valuesstored in the calibration table that includes the linear encoderposition. A number assigned to the range of values indicate the numberof cartridges associated with the linear encoder position. In someembodiments, the linear encoder position correlates to the number ofcartridges loaded in the magazine. For example, if the linear encoderposition is identified as five, indicates that there are five cartridgesloaded within the magazine. In other embodiments, the linear encoderposition does not directly correlate to the number of cartridges withinthe magazine, but is instead mapped within the calibration table to thecorresponding number of cartridges within the magazine. For example, alinear encoder position between 5.1 and 5.3 may be mapped to a count ofseven cartridges within the magazine, and a linear encoder positionbetween 5.3 and 5.7 may be mapped to a count of the cartridges withinthe magazine.

At decision block 3112, the hardware processor determines whether thereis a cartridge in a chamber of the weapon. Determining whether there isa cartridge in the chamber of the weapon may include determining whetheran electrical signal is received from one or more magnetic sensorswithin the buffer tube of the weapon. In certain embodiments, thehardware processor of the magazine receives the electrical signal fromthe one or more magnetic sensors of the buffer tube to determine aposition of the bolt and consequently, whether there is a cartridgewithin a chamber of the weapon. In other embodiments, a hardwareprocessor of the weapon itself, such as a hardware processor within ahandle of the weapon, determines whether there is a cartridge in thechamber of the weapon. In certain embodiments, the decision block 3112is optional or omitted. For example, if it is determined that themagazine is not inserted into the weapon, the decision block 3112 may beomitted. In other embodiments, the decision block 3112 may be performedby the weapon regardless of whether a magazine is inserted into theweapon. It can typically be determined whether a cartridge is in thechamber of the weapon based on magnetic sensor from the plurality ofmagnetic sensors that provides a signal to the hardware processor. Thus,is generally unnecessary to have a calibration table for the weapon andto determine whether a cartridge is in the chamber. However, in certainembodiments, the calibration table may be generated for the weapon tofacilitate determining whether a cartridge is in the chamber.

If it is determined at the decision block 3112 that there is not acartridge in the chamber of the weapon, the hardware processor outputsfor display a count of the cartridges at the block 3114 that is includedin the magazine. The block 3114 may include providing a count of thecartridges to a display or a display controller for output to a user.For example, the count of the cartridges may be provided to thecontroller 1212 which may cause the cartridge count to be displayed bythe light emitting diodes 1202.

If it is determined at the decision block 3112 that there is a cartridgein the chamber of the weapon, the hardware processor increments thecount by one at the block 3116. In certain embodiments, the count may beincremented by more than one. For example, if the weapon is amulti-chambered weapon or is a weapon that loads multiple cartridges ata time into a corresponding number of chambers, the count may beincremented by one for each chamber that is determined to be loaded. Theincremented count of cartridges may then be output for display at theblock 3114. Further, in some embodiments, the block 3114 may outputseparately or together a count of the number of cartridges in themagazine and a count of the number of cartridges within a chamber of theweapon. In some embodiments, the number of cartridges within themagazine and/or chamber is stored within a memory at the block 3114instead of or in addition to being displayed. For example, in someembodiments, the count of cartridges is stored within a memory and isonly displayed upon request by a user or in response to an event, suchas the firing of a cartridge, a loading of the magazine, or the clearingof a jam in the weapon.

Example Magazine Recalibration Process

FIG. 32 presents a flowchart of an embodiment of a magazinerecalibration process. The process 3200 can be implemented by any systemthat can recalibrate a magazine or an ammunition count system of themagazine. For example, the process 3200, in whole or in part, can beimplemented by electronic circuitry included in the magazine 100, suchas the electronic circuitry 122, and/or electronic circuitry in theweapon 1300, such as the electronic circuitry 2002. To simplifydiscussion and not to limit the disclosure, portions of the process 3200will be described with respect to particular systems, such as theelectronic circuitry 122 or 2002. However, it should be understood thatoperations of the process 3200 may be performed by other systems. Forexample, one or more operations of the process 3200 may be performed bya computing device that is configured to communicate with the magazine100.

The process 3200 begins at block 3202 where, for example, a hardwareprocessor included in the electronic circuitry 122 detects a trigger torecalibrate the magazine 100. The trigger may include interaction by auser with a user interface, such as a pressing a button or a powering onof circuitry within the magazine. Alternatively, or in addition, thetrigger may be related to a passage of time. For example, the magazinemay be recalibrated once a day, once a week, once a month, or some otherdetermined time. In some cases, the trigger may be the loading orunloading of the magazine a particular number of times. The amount offorce applied to cartridges within the magazine may differ for eachweapon. In some cases, even weapons of the same manufacturer may apply adifferent amount of force to the cartridges within the magazine because,for example, of manufacturing tolerances or wear and tear of the weapon.Thus, in some embodiments, the process 3200 may be triggered orinitiated each time a user uses a different weapon with the magazine. Insome cases, when the magazine 100 is first obtained by a user, or at anyother time the user selects, the user may initiate the process 3200. Insome embodiments, the trigger may be a command received in response to auser interacting with a user interface on a magazine, on a weapon, or onany type of wireless device that can communicate with the magazine. Forexample, a user may access a user interface on a smartphone or a laptopto request recalibration of a set of magazines. The wireless device maycommunicate wirelessly with each magazine registered to the user, or asubset of identified magazines, to trigger the recalibration process forthe magazines.

At block 3204, the hardware processor determines an insertion status forthe magazine corresponding to whether the magazine is inserted into aweapon. The insertion status may be determined based at least in part onthe ability of the hardware processor in the magazine to communicatewith electronic circuitry of the weapon. In some cases, a mechanicalswitch in the magazine may be triggered based on the insertion of themagazine into the weapon, thereby indicating whether or not the magazineis inserted into the weapon. In other cases, an optical or electricalswitch is triggered based on the insertion of the magazine into theweapon, thereby indicating whether or not the magazine is inserted intothe weapon. In some cases, a user may indicate the insertion status ofthe magazine by interacting with a user interface on the magazine or ona system in communication with the magazine.

At block 3206, hardware processor accesses a calibration table of themagazine based at least in part on the insertion status. The calibrationtable may be accessed from a memory of the magazine. In someembodiments, the calibration table may be accessed from a memory of theweapon. In some embodiments, the calibration table may be selected froma plurality of calibration tables based at least in part on theinsertion status of the magazine, and identity of a type of cartridgesloaded into the magazine, or a manufacturer of the cartridges loadedinto the magazine.

At block 3208, the hardware processor determines a count of a number ofcartridges loaded in the magazine. The count of the number of cartridgesloaded into the magazine may be identified by a user interacting with auser interface of the magazine. Alternatively, in certain embodiments,the number of cartridges loaded into the magazine is assumed to be aparticular number of cartridges required for recalibrating the magazine.For example, a user may be instructed to load the magazine with aparticular number of cartridges corresponding to the maximum number ofcartridges may be loaded into the magazine. In some embodiments, theprocess 3200, or certain operations thereof, may be repeated usingdifferent numbers of cartridges within the magazine. For example, theprocess may be repeated using zero cartridges, the maximum number ofcartridges, the number of cartridges corresponding to the magazine beinghalf-full, or a number of cartridges corresponding to the magazine beingone third full. In some embodiments, a user may be instructed, such asvia a user interface of the magazine, to load a particular number ofcartridges into the magazine. The user may be instructed to loaddifferent numbers of cartridges into the magazine across multipleperformances of portions of the process 3200 to generate the modifiedcalibration table.

At block 3210, the hardware processor determines an expected linearencoder position based at least in part on the calibration table and thecount of the number of cartridges. Determining the expected linearencoder position may include determining in the calibration table wherethe linear encoder is expected to be within the magazine for theidentified number of cartridges loaded into the magazine. In some cases,the hardware processor may use the number of cartridges as an indexvalue to access the calibration table to determine the expected oranticipated linear encoder position for the linear encoder of themagazine.

At block 3212, the hardware processor determines a linear encoderposition. In some embodiments, the block 3212 may include one or more ofthe embodiments previously described with respect to the block 3108.

At block 3214, the hardware processor determines a difference betweenthe current linear encoder position and the expected linear encoderposition to obtain an adjustment factor. In certain embodiments, thedifference between the current linear encoder position and the expectedlinear encoder position is zero and consequently the adjustment factoris zero. However, in other embodiments, the difference between thecurrent linear encoder position and expected linear encoder position isnonzero. The difference between the two encoder positions may be nonzerobecause, for example, the ammunition used to calibrate the magazineinitially and the ammunition used during the recalibration process 3200may differ in type or a manufacturer. In some cases, the difference maybe attributable to tolerances for the ammunition manufactured by amanufacturer. In some cases, the magazine is loaded with a defaultcalibration table created using a model magazine for some magazine otherthan the current magazine being recalibrated. In some such casesvariations may occur during the manufacturing process resulting in thelinear encoder position for a particular number of cartridges loaded inthe magazine differing from that of the default calibration table.Moreover, in some cases, the structure of the magazine may change overtime due to wear and tear of the magazine. For example, the stiffness ofthe magazine housing or the springiness of the spring may change overtime as the magazine is used or is exposed to different environmentalfactors. In some such cases, the position of the linear encoder for aparticular number of cartridges loaded in the magazine may change overtime as the as the condition of the magazine evolves over time.

At block 3216, the hardware processor modifies the calibration tablebased at least in part on the adjustment factor. In some embodiments,the hardware processor may modify the calibration table only if theadjustment factor exceeds a threshold. In other embodiments, thehardware processor modifies the calibration table based on any nonzeroadjustment factor. In some cases, the adjustment factor is the same forthe entire calibration table. In other words, the linear encoderposition may be modified based on the adjustment factor for each entryassociated with each number of cartridges loaded within the magazine.Alternatively, in certain embodiments, the adjustment factor may varyfor different amounts of cartridges loaded within the magazine. Forexample, the adjustment factor for the linear encoder may be smallerwhen the magazine is empty or has a fewer number of cartridges loadedcompared to when the magazine has a greater number of cartridges loaded.For instance, the adjustment factor for the linear encoder may be zerowhen the magazine is empty, 1 μm when one cartridge is loaded in themagazine, 2 μm when to cartridges are loaded in the magazine, 4 μm whenthree cartridges are loaded in the magazine, and 1 mm when fourcartridges are loaded in the magazine. In some embodiments, the hardwareprocessor may modify the calibration table associated with the magazinebeing inserted into the weapon and the calibration table associated withthe magazine not being inserted into the weapon based on the adjustmentfactor. In other embodiments, the process 3200 is repeated once for themagazine being inserted the weapon and once the magazine not beinginserted into the weapon.

At block 3218, the hardware processor stores the modified calibrationtable at the magazine. The modified calibration table may replace theexisting calibration table or may be stored as an additional calibrationtable. The calibration table may be stored in a memory of the magazine.

Example Process of Obtaining a Total Ammunition Count

FIG. 33 presents a flowchart of an embodiment of a total ammunitioncount process 3300. The process 3300 can be implemented by any systemthat can obtain a total ammunition count available to a user across oneor more magazines registered to a weapon of the user. For example, theprocess 3300, in whole or in part, can be implemented by electroniccircuitry included in the magazine 100, such as the electronic circuitry122, and/or electronic circuitry in the weapon 1300, such as theelectronic circuitry 2002. To simplify discussion and not to limit thedisclosure, portions of the process 3300 will be described with respectto particular systems, such as the electronic circuitry 122 or 2002.However, it should be understood that operations of the process 3300 maybe performed by other systems. For example, one or more operations ofthe process 3300 may be performed by a computing device that isconfigured to communicate with a weapon 1300 or one or more magazines.

Performance of the process 300 may occur in response to a trigger. Thistrigger may be a request from a user, a passage of time, the addition orremoval of a magazine from a set of magazines registered to a weapon orto a user, or the insertion or removal of a magazine from an insertionport of the weapon.

The process 3300 begins at block 3302 where, for example, a hardwareprocessor included in the electronic circuitry 2002 accesses theidentity of one or more magazines registered to a weapon. The identityof the one or more magazines may be obtained from a memory, such as anon-volatile memory, located within the weapon. This memory may belocated within a handle of the weapon, or a stock of the weapon. In someembodiments, the memory may be located within hardware other than theweapon carried by the user, such as a helmet or personal communicationdevice included in the user's kit. The identity of the one or moremagazines may include a network address for accessing the one or moremagazines via an ad hoc network. The network address may be formed froma combination of an identifier of the weapon and an identifier of themagazine.

In some such embodiments, the weapon may serve as a router or hub thatcan communicate with the one or more magazines. This communication maybe performed using ultra-wide band (UWB) communication. Further, therange of communication may be limited to a particular range of the usercarrying the weapon creating a small personal network for the user. Forexample, the range of communication may be limited to 100 meters, 50meters, 25 meters, 10 meters, or 3 meters or less. In some embodiments,although the transceiver in the weapon may be capable of communicatingover a larger distance, the power supplied may be sufficiently small tolimit communication to 1 to 2 meters to prevent eavesdropping orinterference. Communication range may be limited based on the amount ofpower supplied to the networking equipment of the weapon. In someembodiments, the router or hub may be included and other equipmentcarried by the user, such as a helmet of the user. In some embodiments,the weapon may implement a low probability of intercept/low probabilityof detect (LPI/LPD) protocol to reduce eavesdropping or interference bymalicious users.

At block 3304, the hardware processor, using a transceiver, attempts toestablish a communication connection with a magazine from the one ormore magazines identified at the block 3302. In some embodiments, theoperations associated with the block 3304 may be performed in parallelor substantially in parallel for a plurality of magazines of the one ormore magazines. In some cases, a magazine inserted into the weapon maybe omitted from the operations of the block 3304 because, for example, acount of cartridges loaded in the magazine inserted into the weapon maybe obtained via alternative communication channels between the magazineand the weapon and/or alternative processes available for the magazineinserted into the weapon. For example, an optical communicationconnection may be established between the weapon and the magazineinserted into the weapon enabling the weapon to obtain the cartridgecount for the magazine inserted into the weapon by requesting thecartridge count from the hardware processor of the magazine. As anotherexample, the magazine may automatically provide the cartridge count tothe weapon when inserted into the weapon via an optical connection tothe weapon. In some embodiments, communication between the magazine andthe weapon is encrypted or occurs over a secure channel. Further, theattempt to establish the communication connection with the magazine mayoccur over a particular time period. For example, the weapon may attemptto communicate with a magazine for 5, 10, 15, or 30 seconds or a minute.

At decision block 3306, the hardware processor determines whether acommunication connection was successfully established with the magazine.The hardware processor may determine whether the attempt to establishthe communication connection was successful based at least in part onwhether the transceiver receives an acknowledgment packet or responsefrom the magazine. In some cases, the hardware processor determineswhether the attempt to establish a communication connection wassuccessful based on whether the acknowledgment packet or other responsefrom the magazine is received within a particular time period.

If it is determined at the decision block 3306 that a communicationconnection was not successfully established with the magazine, thehardware processor deregisters the magazine from the one or moremagazines registered to the weapon at block 3308. Deregistering themagazine may include removing the identification of the magazine in amemory of the weapon. Alternatively, or in addition, deregistering themagazine may include marking an identifier of the magazine in the memoryas no longer available. Further, in certain embodiments, deregisteringthe magazine may include removing a number of cartridges associated withthe deregistered magazine from a total count of cartridges available tothe user.

If it is determined that the decision block 3306 that a communicationconnection was successfully established, the hardware processordetermines at the block 3310 a count of the number of cartridges loadedin the magazine. Determining the count of the number of cartridgesloaded in the magazine may include requesting account information fromthe magazine. Requesting the account information of the number ofcartridges loaded in the magazine may cause the magazine to access itsmemory to determine the count of cartridges and to transmit the countinformation to the weapon. Alternatively, or in addition, requesting thecount information of the number of cartridges loaded in the magazine maycause the magazine to perform a cartridge count process, such as theprocess 3100.

At block 3312, the hardware processor adds the count obtained at theblock 3310 to a total count of cartridges. The total count of cartridgesmay represent the total number of cartridges available to a user.Alternatively, or in addition, the total count of cartridges mayrepresent the total number of cartridges loaded into all of themagazines registered with the user or registered to the weapon. In otherwords, if there are five magazines registered to the weapon or to theuser, the total count of cartridges may represent the cumulative numberof cartridges loaded into the five registers combined.

At the decision block 3314, the hardware processor determines whetherthere are more magazines registered to the weapon. If there are moremagazines registered to the weapon, the process 3300 returns to theblock 3304 where the hardware processor repeats the operations of theblock 3304 for a different magazine of the one or more magazines.

If there are no more magazines registered to the weapon, the hardwareprocessor outputs the total count of cartridges at the block 3316. Theblock 3316 may include one or more of the embodiments previouslydescribed with respect to the block 3114. In some embodiments, the totalcount of cartridges may be displayed on a display of the magazineinserted into the weapon, on a scope attached to the weapon, on a headsup display of the helmet, or any other display accessible to the user.In some embodiments, the total count of cartridges may be transmittedwirelessly to another user other than the user carrying the weapon orotherwise associated with the weapon. For example, the total cartridgecount may be transmitted to a display or system of a squad commander orother supervising user of the user carrying the weapon. In someembodiments, the total cartridge count may be transmitted to anotherlocation, such as a command center or other monitoring location. In somecases, the total count of cartridges is not output for display or isonly output for display upon a request by a user. In some such cases,the total count of cartridges may be stored in a nonvolatile memory ofthe weapon or in other nonvolatile memory available to the user, such asnon-volatile memory may be included in a helmet (e.g., a helmet with aheads up display) of the user.

In some embodiments, the total cartridge count may also include thecartridges loaded in a magazine that is inserted into the weapon. Insome such cases, a count of the cartridges loaded in the magazine isinserted into the weapon may be determined using the process 3100. Todetermine the count of cartridges loaded in the magazine that isinserted into the weapon may be added to the total count of cartridgesavailable to a user across all magazines registered to the weapon.Further, in some embodiments, the total count of cartridges may includea cartridge in a chamber of the weapon.

In some embodiments, the process 3300 or a modified version of theprocess 3300 may be used to identify ammunition count for differenttypes of ammunition carried by the user. For example, when each magazineis registered with the weapon, the type of ammunition loaded in themagazine may also be identified. Thus, when calculating the total countof cartridges available to the user, the hardware processor mayseparately count magazines that are loaded with different types ofammunition. In some such cases, the weapon may display the totalammunition available to the user and the total ammunition of each typeof ammunition available to the user. Thus, for example, the weapon maydisplay the total amount of round nose cartridges and the total numberof hollowpoint cartridges available to the user.

In some embodiments, the weapon may count the total number of cartridgesavailable to a user for magazines the user carries for a differentweapon. For example, the user may register each magazine the usercarries with a weapon that includes the ammunition count hardware. Theweapon may then communicate with each of the magazines to determine thetotal cartridges available to the user regardless of whether the weaponcan load each of the magazines. Advantageously, in certain embodiments,the weapon can count the total number of cartridges available for theuser's rifle as well as the user's handgun or other weapon and displayit on a single display enabling the user to track the total ammunitionavailable to the user. The display may identify separately the cartridgecounts for the different weapons of the user.

Example Magazine Registration Process

FIG. 34 presents a flowchart of an embodiment of a magazine registrationprocess 3400. The process 3400 can be implemented by any system that canregister a magazine with a weapon. For example, the process 3400, inwhole or in part, can be implemented by electronic circuitry included inthe magazine 100, such as the electronic circuitry 122, and/orelectronic circuitry in the weapon 1300, such as the electroniccircuitry 2002. To simplify discussion and not to limit the disclosure,portions of the process 3400 will be described with respect toparticular systems, such as the electronic circuitry 122 or 2002.However, it should be understood that operations of the process 3400 maybe performed by other systems. For example, one or more operations ofthe process 3400 may be performed by a computing device that isconfigured to communicate with a weapon 1300 or one or more magazines.

The process 3400 begins at block 3402 where, for example, a hardwareprocessor included in the electronic circuitry 2002 identifies theexistence of an unregistered magazine. The unregistered magazine mayinclude any magazine that is not currently registered with the weaponregardless of whether the magazine was registered with the weapon atsome previous point in time. The hardware processor may identify theexistence of the unregistered magazine when the unregistered magazine isinserted into the weapon. Upon insertion of the magazine into theweapon, the hardware processor may obtain an identifier for themagazine. The hardware processor may access a list or other datastructure stored within a memory of the weapon and may determine whetherthe identifier for the magazine is included in the list or the datastructure to determine whether the magazine is unregistered with theweapon.

Alternatively, or in addition, the existence of an unregistered magazinemay be determined when the magazine is brought within a particulardistance of the weapon. For example, when the unregistered magazine isbrought within radio distance of the weapon, the weapon may access radiofrequency identifier (RFID) tag or other type of tag of the magazine toobtain identifier of the magazine. Using the identifier of the magazine,the hardware processor can determine whether the magazine is registeredwith the weapon. In some embodiments, when a user presses a button onthe magazine or interacts with the user interface of the magazine, themagazine may transmit an identifier within a particular distance. Incertain embodiments, this particular distance is generally a shortdistance (e.g., 10 feet or less) to prevent weapons of other users fromreceiving the identifier from the magazine. Further, the identifier maybe used by the weapon to determine whether the magazine is registeredwith the weapon. Further, the identifier may be used to facilitate theweapon communicating with the magazine to establish a network identifierfor further communication between the magazine and the weapon.

In certain embodiments, the user may deregister a magazine with theweapon by interacting with the user interface to indicate that amagazine inserted into the weapon is to be deregistered. Alternatively,or in addition, the user may interact with the user interface of themagazine to indicate to the weapon that the magazine within RFIDcommunication distance of the weapon is to be deregistered from theweapon.

At block 3404, the hardware processor receives a magazine identifier forthe unregistered magazine. The magazine identifier may be a uniqueidentifier associated with the magazine of the weapon and can be used todistinguish the magazine from other magazines that may be withincommunication distance of the weapon. In some cases, the magazineidentifier is a default identifier associated with any magazine that isnot registered to a weapon. Upon registering the magazine with a weapon,the default identifier may be replaced with a unique identifier assignedby the weapon. Upon the registering the magazine with a weapon or uponthe magazine no longer being within communication distance with theweapon, the identifier assigned by the weapon may be reset or replacedwith the default identifier. In some embodiments, the identifier of themagazine may be or may be similar to a media access control (MAC)address.

At block 3406, the hardware processor provides a weapon identifier tothe unregistered magazine. The weapon identifier may be a uniqueidentifier associated with the weapon that is registering the magazine.In some embodiments, the weapon identifier of the weapon may be or maybe similar to a media access control (MAC) address. In certainembodiments, the magazine may combine the weapon identifier with themagazine identifier to create an identifier used for furthercommunication with the weapon. In certain embodiments, instead ofproviding the weapon identifier to the unregistered magazine, the block3406 may include providing a unique identifier to the unregisteredmagazine that is based at least in part on the magazine identifier andthe weapon identifier, and which may be used to uniquely identify themagazine. In some embodiments, the block 3406 may be optional oromitted. For example, in some embodiments, the weapon may provide thenetwork identifier created at the block 3408 below to the magazine.

At block 3408, the hardware processor combines the magazine identifierand the weapon identifier to create a network identifier for themagazine. The network identifier may be a unique identifier that theweapon uses to identify the magazine. In some embodiments the weapon mayuse the network identifier is a network address to establishcommunication with the magazine. Advantageously, in certain embodiments,by assigning each magazine a unique network identifier, each magazinewithin communication range of the weapon can determine whether acommunication is intended for the magazine or another magazineregistered with the weapon.

At block 3410, the hardware processor stores the network identifier ofthe magazine. The network identifier may be stored in a non-volatilememory of the weapon.

At block 3412, the hardware processor obtains a count of cartridgesloaded into the magazine. In certain embodiments, the block 3412 mayinclude performing the process 3100, or portions thereof. In some cases,the hardware processor may request the count of cartridges from themagazine by establishing a communication connection with the magazinevia a secure channel and using the network identifier assigned to themagazine. In some embodiments the block 3412 may include one or more ofthe embodiments described with respect to the block 3310.

At block 3414, the hardware processor adds the count to a total count ofcartridges registered with the weapon. The total count of cartridgesregistered with the weapon may be stored in the nonvolatile memory ofthe weapon. In some embodiments, performing the block 3414 may includeperforming the process 3300, or parts thereof. In some embodimentsdetermining the total count of cartridges registered with the weapon mayinclude aggregating the count of cartridges loaded within each magazineregistered with the weapon including a magazine inserted into theweapon. Further, determining the total count of cartridges registeredwith the weapon may include determining whether the cartridge is withina chamber of the weapon. In some embodiments, the block 3414 may includeadding the count of cartridges for the magazine newly registered to theweapon to a running count of cartridges previously determined to beregistered with the weapon. In other embodiments, the block 3414 mayinclude performing a new count of cartridges available across allmagazines registered with the weapon. In some embodiments determiningthe total count of cartridges registered with the weapon may includesubtracting the count of cartridges loaded into a magazine that isdetermined to be deregistered or no longer registered with the weapon.The deregistered magazine may include a magazine that the weapon is nolonger able to indicate with to you, for example, a distance between theweapon in the magazine.

Example Weapon Display State Machine

FIG. 35 presents a flowchart of an embodiment of a weapon display statemachine 3500. The weapon display state machine 3500 includes a number ofstates and decision points for a controller of a display of a weaponsystem and/or a hardware processor included in the weapon system. Eachof the states is associated with performing a process as describedherein. The process may be performed by a weapon system or a hardwareprocessor of a weapon system. Although particular processes areidentified, it should be understood that in certain embodiments,alternative embodiments of the processes described herein may beperformed.

When the weapon system is initialized a magazine display state 3510 maybe entered causing performance of a magazine display process 3800.Further, the magazine display process 3800 may be performed continuouslyor intermittently while a hardware processor and/or display controlleris powered or active. Moreover, the weapon system may remain in amagazine display state 3510 when each of the decisions blocks 3502-3506return a “no” determination. The magazine display process 3800 isdescribed in more detail below with respect to FIG. 38.

At decision block 3502, it is determined whether an edge buffer tubemagnetic sensor has been triggered. If one or more edge buffer tubemagnetic sensors have been triggered, the weapon system enters thechamber count display state 3512 causing performance of a chamber countdisplay process 3700. The chamber count display process 3700 isdescribed in more detail below with respect to FIG. 37.

At decision block 3504, it is determined whether a central buffer tubemagnetic sensor has been triggered. If one or more central buffer tubemagnetic sensors have been triggered, the weapon system enters a jamdisplay state 3514 causing performance of the jam display process 3600.The jam display process 3600 is described in more detail below withrespect to FIG. 36.

At decision block 3506, it is determined whether a redraw has beentriggered. If it is determined that a redraw has been triggered, theweapon system enters a redraw state causing performance of the redrawprocess 3900. The redraw process 3900 is described in more detail belowwith respect to FIG. 39.

Example Jam Display Process

FIG. 36 presents a flowchart of an embodiment of a jam display process3600. The process 3600 can be implemented by any system that candetermine whether a weapon is jammed and display a jam state of theweapon. For example, the process 3600, in whole or in part, can beimplemented by electronic circuitry included in the magazine 100, suchas the electronic circuitry 122, and/or electronic circuitry in theweapon 1300, such as the electronic circuitry 2002. To simplifydiscussion and not to limit the disclosure, portions of the process 3600will be described with respect to particular systems, such as theelectronic circuitry 122 or 2002. However, it should be understood thatoperations of the process 3600 may be performed by other systems. Forexample, one or more operations of the process 3600 may be performed bya computing device that is configured to communicate with a weapon 1300or one or more magazines.

The process 3600 begins at block 3602 where, for example, a hardwareprocessor included in the electronic circuitry 2002 detects a signalgenerated by a central buffer tube magnetic sensor. Detecting a signalat the central buffer tube magnetic sensor may include determining thatthe central buffer tube magnetic sensor generated a signal based on amagnet or magnetic field detected by the magnetic sensor. The signal maybe generated by a magnetic sensor within the buffer tube that is betweenthe two ends of the buffer tube in response to a magnetic field producedby a magnet within sensor detection range of the magnetic sensor.

The central buffer tube magnetic sensor may include any of the magneticsensors that are between the two ends of the buffer tube. For example,with reference to FIG. 20, some weapons may include five magneticsensors 2018 within the buffer tube 2012 of the weapon 1300. The centralbuffer tube magnetic sensors may include the middle three magneticsensors 2018 that are between the magnetic sensors at each end of thebuffer tube 2012. In certain embodiments, the magnetic sensors 2018 maygenerate a signal regardless of detection of a magnet 2016. In some suchembodiments, detecting the signal generated at the central buffer tubemagnetic sensor 2018 may include determining that the signal generatedby one of the central buffer tube magnetic sensors 2018 is stronger thana signal generated by an edge buffer tube sensor.

At block 3604, the hardware processor initiates a jam detection timer.The jam detection timer may include a timer that counts the length oftime that the signal is received from one or more of the central buffertube magnetic sensors. Alternatively, or in addition, the jam detectiontimer may measure the amount of time that the strongest signal isreceived from one of the central buffer tube magnetic sensors assupposed to one of the edge buffer tube magnetic sensors. Initiating thejam detection timer may include setting the timer to a value of zero andstarting the timer.

At decision block 3606, the hardware processor determines whether asignal has been generated at an edge buffer tube magnetic sensor.Determining whether a signal has been generated at the edge buffer tubemagnetic sensor may comprise determining whether an edge buffer tubemagnetic sensor has generated a signal in response to a magnet ormagnetic field. In certain embodiments, the decision block 3606 includesdetermining whether the signal has been generated at a particular edgebuffer tube magnetic sensor. In other words, the decision block 3606includes determining whether the signal has been generated at themagnetic sensor 2018 at one edge of the buffer tube or by the magneticsensor 2018 at the opposite edge of the buffer tube of FIG. 20. In otherembodiments, the decision block 3606 includes determining whether asignal has been detected as being generated at either of the edge buffertube magnetic sensors. In some embodiments, the decision block 3606 mayinclude one or more of the embodiments associated with the block 3602,but with respect to the edge sensors instead of the central buffer tubemagnetic sensors.

In some embodiments, the decision block 3606 may include determiningwhether a signal generated at an edge buffer tube magnetic sensor isstronger than one or more signals that may be generated by one or moreother buffer tube magnetic sensors 2018. In some cases, the magneticfield generated by the magnet 2016 may be sufficiently strong enough tobe detected by multiple magnetic sensors 2018. Alternatively, or inaddition, multiple magnetic sensors 2018 may be sensitive enough todetect a magnetic field generated by the magnet 2016. In some suchcases, the determination of whether an edge magnetic sensor 2018 or acentral magnetic sensor 2018 within the buffer tube generates a signalresponsive to detecting a magnet, or magnetic field, may be based on thestrength of the signal generated. In some cases, the decision block 2606includes determining whether the strength of the signal at the edgebuffer tube magnetic sensor exceeds the strength of the signal at thecentral buffer tube magnetic sensor by a threshold amount.

If a signal is detected as being generated at the edge buffer tubemagnetic sensor, or if the signal from the edge buffer tube magneticsensor is stronger than signals from a central buffer tube magneticsensor, the hardware processor resets a jam detected flag at the block3608. In certain embodiments, the block 3608 may be optional or omitted.For example, if the jam detected flag was not previously set, or doesnot indicate the existence or potential existence of a jam, the block3608 may be omitted. Further, the block 3608 may include resetting orstopping a jam detection timer initiated at the block 3604.

If a signal is not generated at the edge buffer tube magnetic sensor, orif the signal generated at the edge buffer tube magnetic sensor is lowerin strength than a signal generated at a central buffer tube magneticsensor, the hardware processor determines whether the jam detectiontimer has expired at the decision block 3610. Determining whether thejam detection timer has expired may include determining whether apassage of time measured by the jam detection timer exceeds a thresholdlength of time. The threshold length of time may vary based on the typeof weapon. In some embodiments, the user may set the threshold length oftime. If the jam detection timer has not expired, or has not exceededthe threshold length of time, the process 3600 returns to the decisionblock 3606 where the hardware processor continues to monitor whether asignal has been generated at the edge buffer tube magnetic sensor.

If it is determined at the decision block 3610 that the jam detectiontimer has expired, the hardware processor sets a jam detected flag atthe block 3612. Setting the jam detected flag may include setting avalue of the jam detected flag to indicate that a jam has been detectedin the weapon. Further, setting the jam detected flag may includestoring at a non-volatile memory of the weapon that the jam has beendetected. Further, the hardware processor sets a redraw flag at theblock 3614. Setting the redraw flag may trigger performance of theredraw process 3900 associated with the state 3516 as illustrated in theFIG. 35. The redraw process 3900, as described below, may be used tooutput an indication to a user that the weapon is jammed. In certainembodiments, the blocks 3612 and/or 3614 may be optional or omitted. Forexample, in some embodiments, if the jam detection timer has expired,the hardware processor may cause an output of an indication that theweapon is jammed without setting any internal flags within the weapon.

Example Chamber Count Display Process

FIG. 37 presents a flowchart of an embodiment of a chamber count displayprocess 3700. The process 3700 can be implemented by any system that candetermine whether a cartridge is in a chamber of a weapon. For example,the process 3700, in whole or in part, can be implemented by electroniccircuitry included in the magazine 100, such as the electronic circuitry122, and/or electronic circuitry in the weapon 1300, such as theelectronic circuitry 2002. To simplify discussion and not to limit thedisclosure, portions of the process 3700 will be described with respectto particular systems, such as the electronic circuitry 122 or 2002.However, it should be understood that operations of the process 3700 maybe performed by other systems. For example, one or more operations ofthe process 3700 may be performed by a computing device that isconfigured to communicate with a weapon 1300 or one or more magazines.

The process 3700 begins at block 3702 where, for example, a hardwareprocessor included in the electronic circuitry 2002 determines a currentweapon state of a weapon. Determining the current weapon state of theweapon may include determining the configuration of a bolt of theweapon, whether a magazine is inserted into the weapon, a count ofcartridges within the magazine inserted into the weapon, or any otherstatus information for the weapon the may be used to determine whether acartridge is loaded into a chamber of the weapon. As indicated by thestate graph 3500, the process 3700 may be initiated when a signal isreceived from an edge buffer tube magnetic sensor. Accordingly, incertain embodiments, the current weapon state of the weapon is a stateother than a jam state.

At decision block 3704, the hardware processor determines whether a boltof the weapon is open. Determining whether the bolt of the weapon isopen may be based at least in part on the current weapon state of theweapon. Further, determining whether the bolt of the weapon is open maybe based at least in part on one or more signals generated by one ormore magnetic sensors within the buffer tube. For example, if a signalis generated by the magnetic sensor 2018 that is closest to the butt orback end of the stock or buffer tube, it may be determined that the boltis open. If instead the signal is generated by the magnetic sensor 2018that is closest to the chamber or magazine, it may be determined thatthe bolt is closed. Further, if the signal is generated by a magneticsensor other than the magnetic sensor closest to the butt of the stock,and may be determined that the bolt is not open. In some cases,determining which magnetic sensor generated a signal may includedetermining which signal generated by a plurality of magnetic sensors isstrongest.

If it is determined at decision block 3704 that the bolt is open, thehardware processor sets the chamber count to zero at block 3706. Settingthe chamber count to zero indicates that there is not a cartridge withina chamber of the weapon.

If it is determined at the decision block 3704 that the bolt is notopen, the hardware processor determines whether the magazine countdecremented at the decision block 3708. Determining whether the magazinecount was decremented may include obtaining a count of the number ofcartridges within a magazine that is inserted into the weapon. The countof the number of cartridges within the magazine inserted that is intothe weapon may be compared to a previously determined count of thenumber of cartridges within the magazine to determine whether the countof cartridges in the magazine decremented.

If it is determined at the decision block 3708 that the magazine countdid not decrement, the hardware processor sets the chamber count to zeroat block 3710. Setting the chamber count to zero indicates that thecartridge is not loaded within the chamber of the weapon.

If it is determined at the decision block 3708 that the magazine countdid decrement, the hardware processor sets the chamber count to one atblock 3712. Setting the chamber count to one indicates that a cartridgeis loaded within the chamber of the weapon.

After setting the chamber count at one of the blocks 3706, 3710, or3712, the hardware processor sets the redraw flag at block 3714. Settingthe redraw flag may trigger performance of the redraw process 3900associated with the state 3516 as illustrated in the FIG. 35. Thisredraw process may be used to output to a user an indication of whethera cartridge is loaded into a chamber. Further, the redraw process may beused to output to a user and updated count of cartridges within amagazine that is inserted into the weapon.

Optionally, at block 3716, the hardware processor resets a jam detectiontimer. Further, the hardware processor optionally resets the jamdetected flag at block 3718. In certain embodiments, because thehardware processor is able to determine whether a cartridge was loadedinto the chamber and was able to determine whether a cartridge count ofa magazine inserted into the weapon decremented, the hardware processoris able to confirm that the weapon is not in a jam state or is no longerin a jam state. Accordingly, the blocks 3716 and 3718 may be used toreset a previous identification of a jam state and/or to reset theprocess used to determine whether the weapon is a jam state. Blocks 3716and 3718 may be optional or omitted because, for example, a jam was notdetected or a jam detection timer was not active.

Example Magazine Display Process

FIG. 38 presents a flowchart of an embodiment of a magazine displayprocess 3800. The process 3800 can be implemented by any system that candetermine and display the status of a magazine with respect to a weapon.For example, the process 3800, in whole or in part, can be implementedby electronic circuitry included in the magazine 100, such as theelectronic circuitry 122, and/or electronic circuitry in the weapon1300, such as the electronic circuitry 2002. To simplify discussion andnot to limit the disclosure, portions of the process 3800 will bedescribed with respect to particular systems, such as the electroniccircuitry 122 or 2002. However, it should be understood that operationsof the process 3800 may be performed by other systems. For example, oneor more operations of the process 3800 may be performed by a computingdevice that is configured to communicate with a weapon 1300 or one ormore magazines.

The process 3800 begins at decision block 3802 where, for example, ahardware processor included in the electronic circuitry 2002 determineswhether a magazine is detected in the weapon. Determining whether themagazine is inserted into the weapon may include communicating with themagazine via an optical connection. Alternatively, or in addition,determining whether the magazine is inserted in the weapon may includedetermining whether a mechanical switch or other physical indicator hasbeen triggered. Advantageously, in certain embodiments, by including aphysical mechanism that is triggered when the magazine is inserted intothe weapon enables the weapon to determine that a magazine is insertedeven if the magazine is a conventional magazine that does not includethe embodiments of the present disclosure.

If it is determined at the decision block 3802 that a magazine is notdetected in the weapon, the hardware processor sets the magazine countto zero at the block 3804. Setting the magazine count to zero indicatesto the weapon that there are no cartridges available to the weapon. Insome embodiments, setting the magazine count to zero indicates that aweapon that there are no cartridges available to the weapon other thanthe cartridge that may be within a chamber of the weapon. It should beunderstood that, in certain embodiments, the operations of the block3804 are associated with a counter for cartridges currently availablefor the weapon to fire and may be distinct from the count of cartridgesavailable to the user, for example, in magazines registered to theweapon, the not inserted into the weapon.

At the block 3806, hardware processor clears the magazine inserted flagor sets the magazine inserted flag to a value indicating that a magazineis not inserted into the weapon. Clearing the magazine inserted flag mayinclude modifying a register or memory of the weapon to indicate that amagazine is not inserted.

If it is determined at the decision block 3802 that a magazine isdetected in the weapon, the hardware processor obtains the magazinecartridge count at the block 3808. Obtaining the magazine cartridgecount may include performing the process 3100 or portions thereof. Insome embodiments, the block 3808 may be optional or omitted. Forexample, if a conventional magazine is inserted into the weapon thatdoes not include the embodiments disclosed herein, the hardwareprocessor of the weapon may be unable to determine the cartridge countfor the inserted magazine. In certain embodiments, if a conventionalmagazine is inserted into the weapon, the hardware processor may set astatus unknown flag indicating that the weapon is unable to determinethe number of cartridges loaded within the magazine.

At the block 3810, the hardware processor sets the magazine insertedflag indicating that a magazine is inserted into the weapon. Setting themagazine inserted flag may include setting a register or memory addressto a value that indicates that a magazine is inserted into the weapon.In some embodiments, the magazine inserted flag is set to a valueindicating a count of the cartridges within the magazine as obtained atthe block 3808.

At the decision block 3812, the hardware processor determines whether achange in the magazine cartridge count or a change in the magazineinserted flag has occurred. If it is determined at the decision block3812 that a change in the magazine cartridge count or in the magazineinserted flag has not occurred, the process 3800 returns to the decisionblock 3802 where the hardware processor may continuously orintermittently determine whether a magazine is detected in the weapon.

If it is determined at the decision block 3812 that there is a change inthe magazine cartridge count. Or in the magazine inserted flag, hardwareprocessor sets the redraw flag at the block 3814. Setting the redrawflag may trigger performance of the redraw process 3900 associated withthe state 3516 as illustrated in the FIG. 35.

Example Redraw Process

FIG. 39 presents a flowchart of an embodiment of a redraw process 3900.The process 3900 can be implemented by any system that can output weaponsystem status information for a weapon. For example, the process 3900,in whole or in part, can be implemented by electronic circuitry includedin the magazine 100, such as the electronic circuitry 122, and/orelectronic circuitry in the weapon 1300, such as the electroniccircuitry 2002. To simplify discussion and not to limit the disclosure,portions of the process 3900 will be described with respect toparticular systems, such as the electronic circuitry 122 or 2002.However, it should be understood that operations of the process 3900 maybe performed by other systems. For example, one or more operations ofthe process 3900 may be performed by a computing device that isconfigured to communicate with a weapon 1300 or one or more magazines.

The process 3900 begins at decision block 3902 where, for example, ahardware processor included in the electronic circuitry 2002 determineswhether a redraw flag has been set. Determining whether the redraw flaghas been set may include accessing a memory location in a memory of theweapon that stores the redraw flag or a state of the redraw flag. Anindication that a redraw flag has been set may be used to cause adisplay of the weapon, or displaying truncation with the weapon, todisplay information about a state of the weapon, such as whether theweapon is jammed, and/or information about the number of cartridgesavailable to the user. The number of cartridges available to the usermay indicate the number of cartridges in the magazine inserted into theweapon, whether a cartridge is within a chamber of the weapon, and/orthe number of cartridges inserted in a set of one or more magazinesregistered to the weapon whether or not a magazine is inserted into theweapon.

If it is determined at the decision block 3902 that a redraw flag hasnot been set, the process 3900 returns to the decision block 3902 wherethe hardware processor continuously or intermittently determines whetherthe redraw flag has been set. In certain embodiments, the determinationthat the redraw flag has not been set may indicate that a change instatus of the weapon or of cartridges available to the weapon has notchanged. Moreover, in certain embodiments, instead of the hardwareprocessor continuously or intermittently determining whether the redrawplay has been set, the hardware processor receives an interrupt signalor a push notification alerting the hardware processor that the redrawplay has been set.

If it is determined at the decision block 3902 that a redraw flag hasbeen set, the hardware processor determines at the decision block 3904whether a magazine inserted flag has been set. Determining whether theredraw inserted flag has been set may include accessing a memorylocation in a memory of the weapon that stores the magazine insertedflag or a state of the magazine inserted flag.

If it is determined at the decision block 3904 that a magazine insertedflag has been set, the magazine inserted status is displayed on a userinterface or display of the weapon system at block 3906. Displaying themagazine inserted status may include displaying a symbol correspondingto the magazine inserted status. In some embodiments, the display of theweapon system may be within the scope of the weapon or may be projectedonto a scope of the weapon. Alternatively, or in addition, the magazineinserted status may be displayed on a user interface or display that isseparate from the weapon, such as on a heads up display of a helmet orany other visual system carried or used by the user.

If it is determined at the decision block 3904 that a magazine insertedflag is not set, the magazine not inserted status is displayed on theuser interface or the display of the weapon system at the block 3908.The block 3908 may include one or more of the embodiments described withrespect to the block 3906, but with the output of the displaycorresponding to the magazine not inserted status.

At decision block 3910, the hardware processor determines whether a jamdetected flag is set. Determining whether the jam detected flag has beenset may include accessing a memory location in a memory of the weaponthat stores the jam detected flag or a state of the jam detected flag.

If a jam detected flag is set, a jam state notification is displayed onthe user interface or the display of the weapon system at the block3912. The block 3912 may include one or more of the embodimentsdescribed with respect to the block 3906, but with respect to displayingthe jam state of the weapon.

At decision block 3914, the hardware processor determines whether anunknown state flag is set. Determining whether the unknown state flaghas been set may include accessing a memory location in a memory of theweapon that stores the unknown state flag or a state of the unknownstate flag. In some embodiments, determining whether the unknown stateflag has been set may include accessing or attempting to access themagazine count for the inserted magazine. If the hardware processor isunable to determine the magazine state for the inserted magazine, thehardware processor may determine that the weapon system is in an unknownstate.

In some embodiments, a weapon may be in an unknown state when firstpowered or initialized because, for example, it may be undeterminedwhether a cartridge is in a chamber. Once a user has cycled the bolt,the weapon can determine its state. If the weapon has a cartridge in thechamber, cycling the bolt may eject the cartridge. Further, if amagazine is inserted into the weapon, cycling the bolt may load acartridge into the chamber if the magazine is not empty. One or more ofthe processes disclosed herein can be used to determine the ammunitionor cartridge count loaded into a chamber of the weapon and/or a magazineinserted into the weapon. Accordingly, in certain embodiments, once auser has cycled the bolt, a weapon in an unknown state may transition toa known state and the unknown state flag may be reset or otherwise setto a value indicating a known weapon state. In certain embodiments, oncethe weapon is transitioned from an unknown state to a known state via,for example, the cycling of the bolt, the weapon may remain in a knownstate by performing the one or more embodiments disclosed herein fordetermining ammunition count and weapon state. In some embodiments, adisplay of the weapon may instruct the user to cycle the bolt uponturning on or powering the electronic circuitry of the weapon enablingthe weapon to determine its state before the user takes further actionwith the weapon.

In some embodiments, a weapon may be unable to determine a number ofcartridges within a magazine because, for example, the magazine may be aconventional magazine that does not include the ammunition countcapabilities disclosed herein. In some such embodiments, the weapon mayindicate an unknown ammunition count or an unknown state. In other suchembodiments, the weapon may indicate a state of the chamber (e.g.,loaded or not loaded), but may indicate that a state of a magazine isunknown. In some cases, the weapon may indicate whether or not amagazine is inserted, but may not display a cartridge count due, forexample, to the magazine being a conventional magazine.

If it is determined at the decision block 3914 that an unknown stateflag is set, an unknown state notification is displayed on the userinterface or the display of the weapon system at the block 3916. Theblock 3916 may include one or more of the embodiments described withrespect to the block 3906, but with respect to displaying the unknownstate.

If it is determined at the decision block 3914 that an unknown stateflag is not set, a magazine count and a chamber count is displayed onthe user interface or the display of the weapon system at the block3918. Determining the magazine count and/or the chamber count forcartridges or ammunition available to the user may include performingone or more of the processes 2800, 3100, or 3300. In some embodiments,determining the magazine count and/or the chamber count may includeaccessing a memory location in a memory of the weapon that stores themagazine count and/or the chamber count. Further, the block 3918 mayinclude one or more of the embodiments described with respect to theblock 3906, but with respect to displaying the ammunition available tothe user or included in magazines registered to the weapon.

Additional Embodiments

A number of additional embodiments are possible based on the disclosureherein. For example, embodiments of the present disclosure can bedescribed in view of the following clauses:

-   -   1. A magazine configured to hold ammunition, the magazine        comprising:        -   a housing comprising an ammunition chamber, wherein the            ammunition chamber is configured to store one or more            cartridges of a particular ammunition type;        -   an ammunition counter configured to determine a quantity of            cartridges of the particular ammunition type within the            ammunition chamber; and        -   an optical transceiver configured to transmit a count of the            quantity of cartridges of the particular ammunition type            within the ammunition chamber to a weapon system when the            magazine is installed in the weapon system.    -   2. The magazine of clause 1, wherein the ammunition counter        comprises:        -   a magnet configured to generate a magnetic field that is at            least partially within the ammunition chamber; and        -   a Hall effect sensor positioned within the housing, the Hall            effect sensor positioned with respect to the housing and the            magnet, wherein the Hall effect sensor generates a signal            when the magnet is within a particular distance of the Hall            effect sensor.    -   3. The magazine of clause 2, wherein the ammunition counter        further comprises electronic circuitry configured to determine        the quantity of cartridges of the particular ammunition type        within the ammunition chamber based at least in part on one or        more signals generated by the Hall effect sensor.    -   4. The magazine of any one of the preceding clauses, further        comprising a digital to optical signal adapter configured to        convert a digital signal corresponding to the count of the        quantity of cartridges to an optical signal for transmission by        the optical transceiver.    -   5. A weapon system comprising:        -   a magazine configured to hold one or more cartridges; and        -   a weapon comprising:            -   an insertion port configured to accept the magazine,                wherein the magazine is configured to be inserted into                the insertion port of the weapon and to provide the one                or more cartridges to the weapon for firing; and            -   an optical transceiver configured to receive a count of                the one or more cartridges within the magazine when the                magazine is installed in the weapon system.    -   6. The weapon system of clause 5, wherein the magazine        comprises:        -   a first magnet configured to generate a first magnetic field            that is at least partially within an ammunition chamber of a            housing of the magazine; and        -   a first set of Hall effect sensors positioned along the            housing, at least some of the first set of Hall effect            sensors aligned with respect to the first magnet when the            ammunition chamber includes a particular number of            cartridges.    -   7. The weapon system of any one of the preceding clauses,        wherein the weapon further comprises a plurality of        light-emitting diodes controllable to display the count of the        one or more cartridges within the magazine.    -   8. The weapon system of any one of the preceding clauses,        wherein the weapon further comprises a plurality of        light-emitting diodes controllable to display a jam state of a        weapon when the magazine is loaded into the weapon.    -   9. The weapon system of any one of the preceding clauses,        wherein the weapon further comprises a second magnet configured        to generate a second magnetic field, the second magnet located        within a buffer tube of the weapon.    -   10. The weapon system of any one of the preceding clauses as        modified by clause 9, wherein the weapon further comprises a        second set of Hall effect sensors positioned along the buffer        tube and configured to detect a position of the bolt based at        least in part on the second magnetic field.    -   11. The weapon system of any one of the preceding clauses as        modified by clause 10, wherein the weapon further comprises        electronic circuitry configured to determine a count of        cartridges within the weapon system.    -   12. The weapon system of any one of the preceding clauses as        modified by clause 11, wherein the electronic circuitry        determines the count of cartridges within the weapon system        based at least in part on one or more signals generated by the        second set of Hall effect sensors and a signal received at the        optical transceiver.    -   13. The weapon system of any one of the preceding clauses,        wherein the weapon further comprises an optical to digital        signal adapter configured to convert an optical signal received        from the magazine by the optical transceiver to a digital        signal, the optical signal corresponding to the count of the one        or more cartridges within the magazine.    -   14. A weapon system comprising:        -   a weapon comprising:            -   an insertion port configured to accept a first magazine                from one or more magazines, wherein the first magazine                is configured to be inserted into the insertion port of                the weapon and to provide one or more cartridges to the                weapon for firing; and            -   a transceiver configured to receive one or more magazine                status signals corresponding to the one or more                magazines, each magazine status signal corresponding to                a different magazine from the one or more magazines.    -   15. The weapon system of clause 14, further comprising the one        or more magazines.    -   16. The weapon system of any one of the preceding clauses,        wherein each magazine status signal corresponds to a number of        cartridges within the corresponding magazine.    -   17. The weapon system of any one of the preceding clauses,        wherein each magazine status signal corresponds to a use state        of the corresponding magazine indicating whether the        corresponding magazine has been used with the weapon.    -   18. The weapon system of any one of the preceding clauses,        further comprising a registration system configured to register        the one or more magazines with the weapon system.    -   19. The weapon system of any one of the preceding clauses as        modified by clause 18, wherein the registration system comprises        an optical scanner configured to scan a machine-readable code        associated with the first magazine from the one or more        magazines.    -   20. The weapon system of any one of the preceding clauses as        modified by clause 19, wherein the machine-readable code        includes a unique identifier associated with the first magazine.    -   21. The weapon system of any one of the preceding clauses as        modified by clause 19, wherein the machine-readable code        includes a unique identifier associated with the first magazine.    -   22. The weapon system of any one of the preceding clauses as        modified by clause 18, wherein the weapon further comprises the        registration system.    -   23. The weapon system of any one of the preceding clauses,        wherein the weapon further comprises a user interface system        configured to display a count of the number of cartridges within        the first magazine when the first magazine is inserted into the        weapon.    -   24. The weapon system of any one of the preceding clauses,        wherein the weapon further comprises a user interface system        configured to display a count of the number of cartridges within        the one or more magazines.    -   25. The weapon system of any one of the preceding clauses,        wherein the weapon further comprises a user interface system        configured to display a count of the one or more magazines.    -   26. The weapon system of any one of the preceding clauses as        modified by clause 25, wherein the user interface system is        further configured to display the count of the one or more        magazines that include one or more cartridges.    -   27. The weapon system of any one of the preceding clauses,        wherein the transceiver is further configured to transmit a        status of the one or more magazines to an external system that        is separate from the weapon system.    -   28. The weapon system of any one of the preceding clauses as        modified by clause 27, wherein the external system comprises a        headgear system.    -   29. The weapon system of any one of the preceding clauses as        modified by clause 27, wherein the external system comprises a        computing system.    -   30. The weapon system of any one of the preceding clauses as        modified by clause 27, wherein the status is transmitted via a        network to a central command center.    -   31. The weapon system of any one of the preceding clauses,        wherein the transceiver comprises an optical transceiver.    -   32. The weapon system of any one of the preceding clauses,        wherein the transceiver comprises a wireless transceiver.    -   33. A magazine configured to hold ammunition, the magazine        comprising:        -   a housing comprising an ammunition chamber, wherein the            ammunition chamber is configured to store one or more            cartridges of a particular ammunition type;        -   a magnet configured to generate a magnetic field that is at            least partially within the ammunition chamber;        -   a Hall effect sensor positioned within the housing, the Hall            effect sensor positioned with respect to the housing and the            magnet, wherein the Hall effect sensor generates a signal            when the magnet is within a particular distance of the Hall            effect sensor; and        -   electronic circuitry configured to determine a quantity of            cartridges of the particular ammunition type within the            ammunition chamber based at least in part on one or more            signals generated by the Hall effect sensor.    -   34. The magazine of clause 33, wherein the Hall effect magnet is        positioned in the follower.    -   35. The magazine of any one of the preceding clauses, wherein        the one or more signals are generated based on a location of the        magnet with respect to the Hall effect sensor.    -   36. The magazine of any one of the preceding clauses, further        comprising a plurality of Hall effect sensors within the        housing, the plurality of Hall effect sensors including the Hall        effect sensor, the plurality of Hall effect sensors positioned        along the housing.    -   37. The magazine of any one of the preceding clauses, further        comprising a plurality of light-emitting diodes controllable to        display the quantity of cartridges of the particular ammunition        type.    -   38. The magazine of any one of the preceding clauses as modified        by clause 37, wherein the plurality of light-emitting diodes are        further controllable to display a jam state of a weapon when the        magazine is loaded into the weapon.    -   39. The magazine of any one of the preceding clauses, further        comprising an optical transceiver configured to transmit the        quantity of cartridges of the particular ammunition type to a        user interface device that is separate from the magazine.    -   40. The magazine of any one of the preceding clauses as modified        by clause 39, wherein the optical transceiver is further        configured to receive a jam state of a weapon when the magazine        is loaded into the weapon.    -   41. The magazine of any one of the preceding clauses, further        comprising an alignment pin configured to align a circuit board        that includes the Hall effect sensor.    -   42. The magazine of any one of the preceding clauses, further        comprising a spring-loaded plunger positioned below the        ammunition chamber and configured to control the position of the        plurality of cartridges within the ammunition chamber.    -   43. The magazine of any one of the preceding clauses as modified        by clause 42, further comprising a gap between a sealing cap of        the magazine and the spring-loaded plunger, the gap configured        to house at least some of the electronic circuitry.    -   44. The magazine of any one of the preceding clauses, further        comprising a power source in electrical communication with the        electronic circuitry.    -   45. A weapon system comprising:        -   a magazine configured to hold one or more cartridges; and        -   a weapon comprising an insertion port configured to accept            the magazine, a buffer tube, and a bolt, wherein the            magazine is configured to be inserted into the insertion            port of the weapon and to provide the one or more cartridges            to the weapon for firing, the magazine comprising:            -   a first magnet configured to generate a first magnetic                field that is at least partially within an ammunition                chamber of a housing of the magazine; and            -   a first set of Hall effect sensors positioned along the                housing, at least some of the first set of Hall effect                sensors aligned with respect to the first magnet when                the ammunition chamber includes a particular number of                cartridges.    -   46. The weapon system of clause 45, wherein the weapon further        comprises a second magnet configured to generate a second        magnetic field, the second magnet located within the buffer tube        of the weapon.    -   47. The weapon system of clause 46, wherein the weapon further        comprises a second set of Hall effect sensors positioned along        the buffer tube and configured to detect a position of the bolt        based at least in part on the second magnetic field.    -   48. The weapon system of any one of the preceding clauses,        further comprising electronic circuitry configured to determine        an amount of cartridges within the ammunition chamber based at        least in part on one or more signals generated by the first set        of Hall effect sensors.    -   49. The weapon system of any one of the preceding clauses as        modified by clause 48, wherein the electronic circuitry is        further configured to determine a total amount of available        cartridges based at least in part on the amount of cartridges        within the magazine and a determination of whether a cartridge        is in a chamber of the weapon.    -   50. The weapon system of any one of the preceding clauses as        modified by clause 48, wherein the electronic circuitry        comprises an application-specific integrated circuit.    -   51. The weapon system of any one of the preceding clauses as        modified by clause 48, wherein the electronic circuitry is        further configured to determine a jam state of the weapon.    -   52. The weapon system of any one of the preceding clauses as        modified by clause 48, wherein at least a portion of the        electronic circuitry is within the magazine.    -   53. The weapon system of any one of the preceding clauses as        modified by clause 48, wherein at least a portion of the        electronic circuitry is within a handle of the weapon.    -   54. The weapon system of any one of the preceding clauses,        further comprising a mountable display mounted on a barrel of        the weapon, the mountable display configured to at least display        an available count of cartridges within the magazine.    -   55. The weapon system of any one of the preceding clauses as        modified by clause 54, wherein the mountable display is further        configured to display a number of loaded magazines available to        a user.    -   56. The weapon system of any one of the preceding clauses as        modified by clause 54, wherein the mountable display is further        configured to display a number of cartridges fired.    -   57. The weapon system of any one of the preceding clauses as        modified by clause 54, wherein the mountable display is further        configured to display a jam state of the weapon.    -   58. A method of determining a number of available cartridges,        the method comprising:        -   generating a magnetic field using a magnet located in a            magazine;        -   detecting, using a set of sensors, a location of the magnet            within the magazine, wherein each of the set of sensors is            configured to generate a voltage based at least in part on            the magnetic field, and wherein the location of the magnet            is determined based at least in part on one or more voltage            values generated by one or more of the sensors from the set            of sensors; and        -   determining a number of cartridges of ammunition within a            magazine based at least in part on the location of the            magnet.    -   59. The method of clause 58, further comprising displaying a        count of the number of cartridges on a display interface        included with the magazine.    -   60. The method of any one of the preceding clauses, further        comprising transmitting count data corresponding to the number        of cartridges to a separate display interface that is separate        from the magazine.    -   61. The method of any one of the preceding clauses as modified        by clause 60, wherein the count data is transmitted using an        optical transceiver.    -   62. The method of any one of the preceding clauses, further        comprising:        -   generating a second magnetic field using a second magnet            located in a weapon;        -   detecting, using at least one sensor, a location of the            second magnet within the weapon, the at least one sensor            separate from the set of sensors; and        -   determining whether a cartridge is within a chamber of the            weapon based at least in part on the location of the second            magnet.    -   63. The method of any one of the preceding clauses as modified        by clause 62, further comprising determining whether the weapon        is jammed based at least in part on the location of the second        magnet within the weapon.    -   64. The method of any one of the preceding clauses, further        comprising:        -   determining a number of magazines assigned to a user;        -   determining a number of cartridges within each of the number            of magazines;        -   summing the number of cartridges within each of the number            of magazines and the number of cartridges of ammunition            within the magazine to obtain a total number of available            cartridges; and        -   causing the total number of available cartridges to be            displayed to the user.    -   65. A computer-readable, non-transitory storage medium storing        computer executable instructions that, when executed by one or        more computing devices, configure the one or more computing        devices to perform operations comprising:        -   generating a magnetic field using a magnet located in a            magazine;        -   detecting, using a set of sensors, a location of the magnet            within the magazine, wherein each of the set of sensors is            configured to generate a voltage based at least in part on            the magnetic field, and wherein the location of the magnet            is determined based at least in part on one or more voltage            values generated by one or more of the sensors from the set            of sensors; and        -   determining a number of cartridges of ammunition within a            magazine based at least in part on the location of the            magnet.    -   66. The computer-readable, non-transitory storage medium of        clause 65, wherein the operations further comprise displaying a        count of the number of cartridges on a display interface        included with the magazine.    -   67. The computer-readable, non-transitory storage medium of any        one of the preceding clauses, wherein the operations further        comprise transmitting count data corresponding to the number of        cartridges to a separate display interface that is separate from        the magazine.    -   68. The computer-readable, non-transitory storage medium of any        one of the preceding clauses as modified by clause 67, wherein        the count data is transmitted using an optical transceiver.    -   69. The computer-readable, non-transitory storage medium of any        one of the preceding clauses, wherein the operations further        comprise:        -   generating a second magnetic field using a second magnet            located in a weapon;        -   detecting, using at least one sensor, a location of the            second magnet within the weapon, the at least one sensor            separate from the set of sensors; and        -   determining whether a cartridge is within a chamber of the            weapon based at least in part on the location of the second            magnet.    -   70. The computer-readable, non-transitory storage medium of any        one of the preceding clauses as modified by clause 69 wherein        the operations further comprise determining whether the weapon        is jammed based at least in part on the location of the second        magnet within the weapon.    -   71. The computer-readable, non-transitory storage medium of any        one of the preceding clauses, wherein the operations further        comprise:        -   determining a number of magazines assigned to a user;        -   determining a number of cartridges within each of the number            of magazines;        -   summing the number of cartridges within each of the number            of magazines and the number of cartridges of ammunition            within the magazine to obtain a total number of available            cartridges; and        -   causing the total number of available cartridges to be            displayed to the user.            Terminology

The embodiments described herein are exemplary. Modifications,rearrangements, substitute processes, etc. may be made to theseembodiments and still be encompassed within the teachings set forthherein. One or more of the steps, processes, or methods described hereinmay be carried out by one or more processing and/or digital devices,suitably programmed.

Depending on the embodiment, certain acts, events, or functions of anyof the algorithms described herein can be performed in a differentsequence, can be added, merged, or left out altogether (e.g., not alldescribed acts or events are necessary for the practice of thealgorithm). Moreover, in certain embodiments, acts or events can beperformed concurrently, e.g., through multi-threaded processing,interrupt processing, or multiple processors or processor cores or onother parallel architectures, rather than sequentially.

The various illustrative logical blocks, modules, and algorithm stepsdescribed in connection with the embodiments disclosed herein can beimplemented as electronic hardware, computer software, or combinationsof both. To clearly illustrate this interchangeability of hardware andsoftware, various illustrative components, blocks, modules, and stepshave been described above generally in terms of their functionality.Whether such functionality is implemented as hardware or softwaredepends upon the particular application and design constraints imposedon the overall system. The described functionality can be implemented invarying ways for each particular application, but such implementationdecisions should not be interpreted as causing a departure from thescope of the disclosure.

The various illustrative logical blocks and modules described inconnection with the embodiments disclosed herein can be implemented orperformed by a machine, such as a processor configured with specificinstructions, a digital signal processor (DSP), an application specificintegrated circuit (ASIC), a field programmable gate array (FPGA) orother programmable logic device, discrete gate or transistor logic,discrete hardware components, or any combination thereof designed toperform the functions described herein. A processor can be amicroprocessor, but in the alternative, the processor can be acontroller, microcontroller, or state machine, combinations of the same,or the like. A processor can also be implemented as a combination ofcomputing devices, e.g., a combination of a DSP and a microprocessor, aplurality of microprocessors, one or more microprocessors in conjunctionwith a DSP core, or any other such configuration.

The elements of a method, process, or algorithm described in connectionwith the embodiments disclosed herein can be embodied directly inhardware, in a software module executed by a processor, or in acombination of the two. A software module can reside in RAM memory,flash memory, ROM memory, EPROM memory, EEPROM memory, registers, harddisk, a removable disk, a CD-ROM, or any other form of computer-readablestorage medium known in the art. An exemplary storage medium can becoupled to the processor such that the processor can read informationfrom, and write information to, the storage medium. In the alternative,the storage medium can be integral to the processor. The processor andthe storage medium can reside in an ASIC. A software module can comprisecomputer-executable instructions which cause a hardware processor toexecute the computer-executable instructions.

Conditional language used herein, such as, among others, “can,” “might,”“may,” “e.g.,” and the like, unless specifically stated otherwise, orotherwise understood within the context as used, is generally intendedto convey that certain embodiments include, while other embodiments donot include, certain features, elements and/or states. Thus, suchconditional language is not generally intended to imply that features,elements and/or states are in any way required for one or moreembodiments or that one or more embodiments necessarily include logicfor deciding, with or without author input or prompting, whether thesefeatures, elements and/or states are included or are to be performed inany particular embodiment. The terms “comprising,” “including,”“having,” “involving,” and the like are synonymous and are usedinclusively, in an open-ended fashion, and do not exclude additionalelements, features, acts, operations, and so forth. Also, the term “or”is used in its inclusive sense (and not in its exclusive sense) so thatwhen used, for example, to connect a list of elements, the term “or”means one, some, or all of the elements in the list.

Disjunctive language such as the phrase “at least one of X, Y or Z,”unless specifically stated otherwise, is otherwise understood with thecontext as used in general to present that an item, term, etc., may beeither X, Y or Z, or any combination thereof (e.g., X, Y and/or Z).Thus, such disjunctive language is not generally intended to, and shouldnot, imply that certain embodiments require at least one of X, at leastone of Y or at least one of Z to each be present.

The terms “about” or “approximate” and the like are synonymous and areused to indicate that the value modified by the term has an understoodrange associated with it, where the range can be ±20%, ±15%, ±10%, ±5%,or ±1%. The term “substantially” is used to indicate that a result(e.g., measurement value) is close to a targeted value, where close canmean, for example, the result is within 80% of the value, within 90% ofthe value, within 95% of the value, or within 99% of the value.

Unless otherwise explicitly stated, articles such as “a” or “an” shouldgenerally be interpreted to include one or more described items.Accordingly, phrases such as “a device configured to” are intended toinclude one or more recited devices. Such one or more recited devicescan also be collectively configured to carry out the stated recitations.For example, “a processor configured to carry out recitations A, B andC” can include a first processor configured to carry out recitation Aworking in conjunction with a second processor configured to carry outrecitations B and C.

While the above detailed description has shown, described, and pointedout novel features as applied to illustrative embodiments, it will beunderstood that various omissions, substitutions, and changes in theform and details of the devices or algorithms illustrated can be madewithout departing from the spirit of the disclosure. As will berecognized, certain embodiments described herein can be embodied withina form that does not provide all of the features and benefits set forthherein, as some features can be used or practiced separately fromothers. All changes which come within the meaning and range ofequivalency of the claims are to be embraced within their scope.

What is claimed is:
 1. A magazine capable of updating a calibrationtable used to determine a quantity of cartridges loaded in the magazine,the magazine comprising: a storage device configured to store one ormore calibration tables, wherein a calibration table of the one or morecalibration tables maps linear encoder position values to cartridgecounts corresponding to quantities of cartridges loaded in the magazine;a linear encoder configured to generate one or more signalscorresponding to the one or more linear encoder position values; and ahardware processor configured to: detect a trigger to recalibrate themagazine; access the calibration table of the magazine from the storagedevice; determine a quantity of cartridges loaded in the magazine;receive a signal from the linear encoder corresponding to a linearencoder position value; update the calibration table based at least inpart on the signal from the linear encoder; and store the updatedcalibration table at the storage device, wherein the updated calibrationtable is useable to automatically determine the quantity of cartridgesloaded in the magazine without user action.
 2. The magazine of claim 1,wherein the hardware processor is further configured to determine thequantity of cartridges loaded in the magazine based on a userinteraction with a user interface.
 3. The magazine of claim 1, whereinthe hardware processor is further configured to: determine a type ofcartridge loaded in the magazine; and select the calibration table froma plurality of calibration tables stored at the storage device based atleast in part on the type of cartridge.
 4. The magazine of claim 1,wherein the hardware processor is further configured to: determine thatthe magazine is loaded into a firearm; and select the calibration tablefrom a plurality of calibration tables stored at the storage devicebased at least in part on the determination that the magazine is loadedinto the firearm, wherein values in the calibration table differ from asecond calibration table of the plurality of calibration tables, andwherein the second calibration table is selected when it is determinedthat the magazine is not loaded into the firearm.
 5. The magazine ofclaim 1, wherein the hardware processor is further configured to:determine, for each position value in a set of linear encoder positionvalues in the calibration table, an adjustment factor based at least inpart on the signal, the set of linear encoder position values comprisingone or more position values; and adjust each linear encoder positionvalue of the set of linear encoder position values based on theadjustment factor for the position value.
 6. The magazine of claim 5,wherein the adjustment factor varies for at least some of the linearencoder position values of the set of linear encoder position values. 7.The magazine of claim 1, wherein the one or more linear encoder positionvalues correspond to positions of a follower of the magazine withrespect to a set of sensors included in the magazine.
 8. The magazine ofclaim 1, wherein the hardware processor is further configured to updatethe calibration table by: generate a new calibration table based atleast in part on the signal value from the linear encoder; and replacethe calibration table with the new calibration table.
 9. The magazine ofclaim 1, wherein the trigger comprises one or more of a passage of time,an activation of a button on the magazine, an occurrence of an errorwhen determining the quantity of cartridges loaded in the magazine; adifference between a value corresponding to the signal and a positionvalue in the calibration table exceeding a threshold, or interaction bya user with a user interface of the magazine.
 10. A method ofrecalibrating a magazine configured to count a number of cartridgeswithin the magazine, the method comprising: detecting, by a hardwareprocessor included in a magazine, a trigger to recalibrate the magazine;accessing, by the hardware processor, a calibration table of themagazine from a storage device of the magazine; determining, by thehardware processor, a count of a number of cartridges loaded in themagazine; receiving, by the hardware processor, a signal from a linearencoder within the magazine; modifying, by the hardware processor, thecalibration table based at least in part on the signal from the linearencoder; and storing, by the hardware processor, the modifiedcalibration table at the storage device, wherein the modifiedcalibration table is useable to automatically determine a quantity ofcartridges loaded in the magazine without user action.
 11. The method ofclaim 10, wherein the count of the number of cartridges is determinedbased on a user input.
 12. The method of claim 10, wherein the count ofthe number of cartridges is obtained from the storage device of themagazine, wherein the storage device stores a pre-specified count to beused during recalibration of the magazine.
 13. The method of claim 10,further comprising: determining a type of cartridge loaded in themagazine; and selecting the calibration table based at least in part onthe type of cartridge.
 14. The method of claim 10, further comprising:determining a manufacturer of a cartridge loaded in the magazine; andselecting the calibration table based at least in part on themanufacturer of the cartridge.
 15. The method of claim 10, furthercomprising: determining whether the magazine is loaded into a firearm;and selecting the calibration table based at least in part on thedetermination of whether the magazine is loaded into the firearm. 16.The method of claim 10, further comprising: determining a second countof a second number of cartridges loaded in the magazine; and receiving asecond signal from the linear encoder within the magazine, wherein thecalibration table is modified based at least in part on the signal andthe second signal from the linear encoder.
 17. The method of claim 10,wherein modifying the calibration table based at least in part on thesignal from the linear encoder comprises: determining an adjustmentfactor for a set of position values in the calibration table based atleast in part on the signal, the set of position values comprising oneor more position values; and adjusting each position value of the set ofposition values based on the adjustment factor for the set of positionvalues.
 18. The method of claim 17, wherein the adjustment factordiffers for at least some of the position values of the set of positionvalues.
 19. The method of claim 17, wherein the set of position valuescorrespond to positions of a magnet of the linear encoder within themagazine corresponding to different quantities of cartridges within themagazine.
 20. The method of claim 17, wherein the set of position valuesis a subset of position values in the calibration table.
 21. The methodof claim 17, wherein determining the adjustment factor for the set ofposition values comprises determining a difference between a valuecorresponding to the signal and at least one position value from the setof position values in the calibration table.
 22. The method of claim 10,wherein the trigger comprises one or more of a passage of time, anactivation of a button on the magazine, an occurrence of an error whendetermining the quantity of cartridges loaded in the magazine; adifference between a value corresponding to the signal and a positionvalue in the calibration table exceeding a threshold, or interaction bya user with a user interface of the magazine.